Установить свойства виджета в PySide можно не только через соответствующие методы и конструктор класса. Можно их изменять с помощью метода setProperty по имени.
btn = QPushButton("Click Me")
btn.setProperty("flat", True)
Это аналогично вызову
btn.setFlat(True)
Если указать несуществующее свойство, то оно просто создается
btn.setProperty("btnType", "super")
Получить его значение можно методом .property(name)
btn_type = btn.property("btnType")
Когда это может быть полезно?
▫️Можно просто хранить какие то данные в виджете и потом их доставать обратно
widget = QWidget()
widget.setProperty('my_data', 123)
print(widget.property('my_data'))
▫️ Назначая эти свойства разным виджетам можно потом отличить виджеты во время итераци по ним. Например, найти все кнопки со свойством my_data="superbtn".
Но ведь вместо кастомного свойства можно использовать objectName, будет тот же результат.
Да, но y ObjectName есть ограничение - только строки.
▫️ Если нам потребуется не просто поиск а, например, сортировка по числу, то свойства позволяют нам это сделать. Поддерживается любой тип данных
widget.setProperty('my_data', {'Key': 'value'})
widget.setProperty('order', 1)
all_widgets.sort(key=w: w.property('order'))
Но ведь Python позволяет всё вышеперечисленное сделать простым созданием атрибута у объекта
widget.order = 1
widget.my_data = 123
Да, но я думаю что не надо объяснять почему не стоит так делать. К тому же, если у виджета нет свойства то метод .property(name) вернет None, а отсутствующий атрибут выбросит исключение.
▫️ Действительно полезное применение кастомным свойствам - контроль стилей. Здесь атрибутами не обойтись, нужны именно свойства.
Дело в том, что в селекторах стилей можно указывать конкретные свойства виджетов на которые следует назначать стиль.
Просто запустите этот код
from PySide2.QtWidgets import *
if __name__ == "__main__":
app = QApplication([])
widget = QWidget(minimumWidth=300)
layout = QVBoxLayout(widget)
btn1 = QPushButton("Action 1")
btn2 = QPushButton("Action 2")
btn3 = QPushButton("Action 3", flat=True)
layout.addWidget(btn1)
layout.addWidget(btn2)
layout.addWidget(btn3)
# добавим кастомное свойство одной кнопке
btn1.setProperty("btnType", "super")
# добавляем стили
widget.setStyleSheet(
"""
QPushButton[btnType="super"] {
background-color: yellow;
color: red;
}
QPushButton[flat="true"] {
color: yellow;
}
"""
)
widget.show()
app.exec_()
С помощью селектора мы избирательно назначили стили на конкретные кнопки.
Как получить список всех кастомный свойств?
Функция получения списка кастомных свойств отличается от получения дефолтных.
def print_widget_dyn_properties(widget):
for prop_name in widget.dynamicPropertyNames():
property_name = prop_name.data().decode()
property_value = widget.property(property_name)
print(f"{property_name}: {property_value}")
#tricks#qt
COCCIDIOSIS
Coccidiosis is a deadly disease that hampers chicken's productivity and welfare. Thus, the disease is a major menace to the global poultry industry. Coccidiosis which is caused by the apicomplexan parasite of the genus Eimeria has seven known species which affect the different parts of the intestinal tract of chickens
#SIGNS
Common signs in infected flocks include
*reduced feed consumption,
* rapid weight loss,
* droopiness
* ruffled feathers,
* severe diarrhea.
* Wet droppings with mucus
* Clinical infections are seldom seen in poults >8 wk old. Morbidity and mortality may be high
#TREATMENT
The most popular treatment for coccidiosis is #Amprolium, which blocks the parasite's ability to uptake and multiply. Treatment is usually administered by adding Amprolium to the chickens' water supply, however in some cases, where sick chickens aren't eating or drinking enough, the medication is given orally.
https://t.me/starvetbooks
Robot Glove Cerebral Infarction Training Device Finger Hand Function Workout
Buy link
GET IT BY ALIEXPRESS 👇
https://s.click.aliexpress.com/e/_EGCqkNG
GET IT BY AMAZON 👇
https://amzn.to/4jS5t8A
GET IT BY TEMU 👇
https://app.temu.com/m/nz8nyq69zbu
#massage#health
#treatment#treatmomright#healthtips
Robot Glove Cerebral Infarction Training Device Finger Hand Function Workout
Buy link
GET IT BY ALIEXPRESS 👇
https://s.click.aliexpress.com/e/_EGCqkNG
GET IT BY AMAZON 👇
https://amzn.to/4jS5t8A
GET IT BY TEMU 👇
https://app.temu.com/m/nz8nyq69zbu
#massage#health
#treatment#treatmomright#healthtips
Robot Glove Cerebral Infarction Training Device Finger Hand Function Workout
Buy link
GET IT BY ALIEXPRESS 👇
https://s.click.aliexpress.com/e/_EGCqkNG
GET IT BY AMAZON 👇
https://amzn.to/4jS5t8A
GET IT BY TEMU 👇
https://app.temu.com/m/nz8nyq69zbu
#massage#health
#treatment#treatmomright#healthtips
Robot Glove Cerebral Infarction Training Device Finger Hand Function Workout
Buy link
GET IT BY ALIEXPRESS 👇
https://s.click.aliexpress.com/e/_EGCqkNG
GET IT BY AMAZON 👇
https://amzn.to/4jS5t8A
GET IT BY TEMU 👇
https://app.temu.com/m/nz8nyq69zbu
#massage#health
#treatment#treatmomright#healthtips
Robot Glove Cerebral Infarction Training Device Finger Hand Function Workout
Buy link
GET IT BY ALIEXPRESS 👇
https://s.click.aliexpress.com/e/_EGCqkNG
GET IT BY AMAZON 👇
https://amzn.to/4jS5t8A
GET IT BY TEMU 👇
https://app.temu.com/m/nz8nyq69zbu
#massage#health
#treatment#treatmomright#healthtips
Cow Calves Mites Infestation:
*******
#Mite_infestations in calves are usually caused by sarcoptic mange (Sarcoptes scabiei) or
chorioptic mange (Chorioptes bovis).
These mites cause
intense itching,
hair loss,
scabs, and
thickened skin, especially around the
head,
neck,
legs, and
tail base.
#Symptoms of Mite Infestation in Calves:
Severe itching and restlessness
Hair loss and crusty skin lesions
Thickened, wrinkled skin
Reduced weight gain due to stress and discomfort
Secondary bacterial infections if untreated
#Diagnosis:
Skin scrapings examined under a microscope
Clinical signs and response to treatment
#Treatment Options:
1. Topical Treatments:
Lime sulfur dips
Amitraz or permethrin-based sprays
Ivermectin or doramectin pour-on treatments
2. Injectable Treatments:
Ivermectin (SC or oral): Effective against both Sarcoptes and Chorioptes
Doramectin or Moxidectin
3. Environmental Control:
Clean and disinfect calf pens
Avoid overcrowding
Treat all animals in the herd to prevent re-infestation
#Prevention:
Regular parasite control programs
Monitoring new animals for signs of mites
Ensuring good nutrition and overall calf health
https://t.me/starvetbooks
‘Heart Water’ Disease:
*******
Heart water also known as
1. Cowdriosis
2. Nintas
3. Ehrlichiosis.
Heart water is a ricketsial disease of ruminats and some wild animals include cattle sheep and goats ans deer in domestic animals the incubation period varies because of dependent of their rout infection and age.
...................#Etiology....................
its a tick born rickettsial diseases caused by Ehrilichia ruminantum (foremaly known as cowdaria ruminuntum)
its transmitted by tick genus of Ambylomma
#NB cowdariosis is a notifiable disease.
.................#Clinical#Sign..................
1. Neurological signs.
* Tremor
* head pressing
2. Respiratory signs.
* Cough
*Nasal discharge.
3. Systemic sign.
* Fever
* Loss of appetite.
4. Physical examination.
* petechiae of mucos membrane.
* Tachycardia
* Muffled heart sound
5. Very hard kicking
6. Oedema and diarrhoea.
...................#Diagnosis.......................
#Post-#Mortum#Examination.
1. a light yellow transudate found
* Thorax
* Abdomen
* Pericardium.
2. Pulmonary oedema
3. Most fetal cases is
* Hydropericardium
4. Difinetly diagnosis you have to focus.
* Hippocampus (Under gemsa stain ) or histopathology
.......#Differential#Diseases.( look like ).......
1. Toxic plant
2. Tetanus ( just look for wound )
3. Listeriosis.
4. Milk fever (but remeber its depends muturation during or after parturaion)
5. Mineral deficiency
6. And more others related muscles.
..............#Control. (Vector control ).................
(Amblyomma hebraeum)
1. Ectoparasiticide
control tick those cause diseases specially thse species
* Boophilus
* Hyalomma
.................#Vaccination (young once ).............
1. a live blood vaccine
......................#Treatment.........................
during early stage you can use
1. Sulfonamide
2. Tetracycline
https://t.me/starvetbooks