Когда разрабатываете свой GUI с помощью PyQt для какого-либо софта бывает необходимо позаимствовать цвета из текущего стиля интерфейса. Например, чтобы правильно раскрасить свои виджеты, подогнав их по цвету. Ведь бывает, что ваш GUI используется в разных софтах. Причём некоторые со светлой темой а другие с тёмной.
По умолчанию стили наследуются, но если вы задаёте какую-либо раскраску для части виджета через свой styleSheet, то требуется ссылаться на цвета текущего стиля.
Как это сделать? Как получить нужный цвет из палитры имеющегося стиля? Это достаточно просто, нужно использовать класс QPalette и его роли.
Например, мне нужно достать цвет текста из одного виджета и применить его в другом как цвет фона (не важно зачем именно так, просто захотелось😊).
Получаем палитру виджета и сразу достаём нужный цвет, указав его роль.
from PySide2.QtGui import QPalette
color = main_window.palette().color(QPalette.Text)
теперь можем использовать этот цвет в стилях
my_widget.setStyleSheet(f'background-color: {color.name()};')
Готово, мы динамически переопределили дефолтный стиль используя текущий стиль окна!
На самом деле есть запись покороче, в одну строку и без лишних переменных. Не очень-то по правилам CSS, но Qt это понимает.
my_widget.setStyleSheet('background-color: palette(Text);')
Этот способ не подходит если вам нужно как-то модифицировать цвет перед применением в своих стилях. В этом случае потребуется первый способ.
Зато он прекрасно сработает в файле .qss, то есть не придётся в коде прописывать раскраску отдельных элементов через ссылки на палитру, всё красиво сохранится в отдельном файле .qss!
QListView#my_widget::item:selected {
background: palette(Midlight);
}
Про имеющиеся роли можно почитать здесь🌍
#qt#tricks
🔤Камқонликни олдини олиш учун қуйидагилар тавсия этилади:
🍲Тўғри овқатланинг - гўшт, жигар, балиқ, яшил барглар, дуккаклилар, ёнғоқлар, цитрус мевалари, қулупнай, малина ва бошқа резаворлар каби темир ва С витамини ўз ичига олган озиқ-овқатларни рационга киритинг.
🏃🏻♀️Соғлом турмуш тарзига риоя қилинг - мунтазам равишда машқ қилинг, етишмовчиликларни текшириб витаминларни қабул қилинг.
🧑🏻🔬Профилактик тиббий кўриклардан ўтиб туринг, шу жумладан қондаги гемоглобин ва темир миқдорини аниқловчи таҳлилларни йилда бир маротаба топшириб туринг.
🚫Спиртли ичимликларни чекланг, улар танадаги темирнинг сўрилишини камайтириши мумкин.
💊Агар керак бўлса, шифокор томонидан белгиланган темир препаратларини қабул қилинг.
Анемия бир неча сабабларга кўра юзага келиши мумкинлигини тушуниш муҳимдир. Жумладан темир, витаминлар этишмаслиги ва баъзи касалликлар. Шунинг учун, агар сизда анемия белгилари мавжуд бўлса, ташхис қўйиш ва даволаш учун шифокорга мурожаат қилишингиз керак.
🩺Doctor Ziyod | #hematology#anemia
❓Нима учун камқонликни аниқлашда фақат гемоглобинга қараш нотўғри?
⠀
🔤Камқонлик - бу қондаги гемоглобинни миқдори пасайиши билан кузатилувчи клиник синдром (белгилар гуруҳи). Кўпинча параллел равишта эритроцитлар сони ҳам камаяди ва кислород ташилиши бузилиб, гипоксия (кислород етишмовчилиги) юзага келади.
⠀
🔤Камқонлик мезонлари:
Гемоглобин эркакларда 130 г/л, аёлларда 120 г/л дан пастроқ бўлиши.
Лекин камқонлик доим фақат темир танқислиги билан боғлиқ бўлмайди. Бошқа тури - бу мегалобласт анемия. Бунда В12 витамини ва фолий кислотаси етишмовчилиги ортидан нуклеин кислоталар (ўша ДНКни ҳосил қиладиган моддалар) яралиши бузилади.
Батафсил қилинган умумий қон таҳлили камқонликни тури ҳақида бирламчи маълумотни беради.
В12 ва фолий кислотаси етишмовчилигида MCV, МСН ва MCHC юқори бўлади. Темир танқис анемияда эса, аксинча паст бўлади.
⠀
В12 дефицит анемияда эозонофиллар, моноцитлар сони пасаяди, лимфоцитлар нисбатан кўпаяди. Беморларни ярмида тромбоцитлар сони ҳам камаяди.
⠀
🔤Темир танқис камқонликни аниқлаш учун топширилади:
- Умумий қон таҳлили
- Ферритин (қонда)
- Қон зардобидаги темир миқдори
• Ферритин танадаги темир заҳираларини акс эттиради. Ферритин паст бўлса, демак темир танқислиги бор. Бунда бошланғич даврда гемоглобин нормада бўлиши мумкин!
⠀
Ферритин 40 нг/мл дан паст бўлиб, гемоглобин нормада бўлса - латент темир етишмовчилиши дейилади.
⠀
Ферритин 40 нг/мл дан паст бўлиб, гемоглобин ҳам паст бўлса - темир танқис анемия дейилади.
⠀
• Зардобдаги темир қонда сузиб юрган темир ва тўқималрдаги заҳиралар миқдорини кўрсатади. Оптимум: 20-25 мкмоль/л.
Таҳлилларда В12 дефицитининг белгилари бўлса, қўшимча шу витаминни аниқлаш учун таҳлил топширилади.
🩺Doctor Ziyod | #hematology#anemia
👀Қонни кўз билан кўриб қуюқ дейиш - катта ҳато!
Баъзида венадан қон ола туриб ҳамширалар "Қониз қуюлиб кетибти" дейишади. Уни устига фақат шу гапга асосланиб одамлар қон суюлтирувчи препаратларни ичиб юришади.
⚡️Бундай ўзбошимчалик жиддий муаммоларга олиб келиши мумкин. Мисол учун, ўткир қон кетиш ҳолатларига.
Қон топширадиган кун эрталаб овқат ейиш мумкин эмаслигини ҳамма билади. Лекин нимагадир одамлар сув ичиш ҳам мумкин эмас деб ўйлашади.
Тунда сув ичмайсиз ва уйғонганизда нисбатан сувсизланган бўласиз. Шу ҳолда лабораторияга борсангиз, қонда суюқлик миқдори нисбатан пасайгани ҳисобига, у қуюқроқ кўринади.
Лекин бу тромб ҳосил бўлиши ва бошқа муаммоларни ҳавфини оширмайди. Шунчаки бу организмдаги табий ўзгаришлар.
☝️Аслида қуюқ қон деб уни ивиш ҳусусияти билан адаштиришади. Ивиш кўрсаткичлари эса фақат ва фақат коагулограмма ва умумий қон таҳлилидаги баъзи кўрсаткичларга қараб аниқланади!
🩺Doctor Ziyod | #hematology#lab