Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
|
z0D5e8n7x |
23.3.2010, 3:49
Сообщение
#21
|
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 23.3.2010 Пользователь №: 1554 Спасибо сказали: 0 раз(а) Репутация: 0
|
а блин, куча косяков
Раскрывающийся текст |
|
|
|
|
novichkov |
25.3.2010, 20:46
Сообщение
#22
|
|
Студент ![]() Группа: Участник Сообщений: 64 Регистрация: 20.3.2008 Из: Северодвинск Пользователь №: 128 Спасибо сказали: 6 раз(а) Репутация: 1
|
А можно просто подождать Qt 4.7
|
|
|
|
|
Sokoloff |
26.3.2010, 13:17
Сообщение
#23
|
|
Участник ![]() ![]() Группа: Участник Сообщений: 237 Регистрация: 1.4.2009 Из: Москва Пользователь №: 654 Спасибо сказали: 50 раз(а) Репутация: 11
|
Цитата(Litkevich Yuriy @ 4.2.2009, 14:32) Link Цитата(entmobile @ 4.2.2009, 17:02) Link Вот немного поправил твой вариант!!! Спасибо огромное!! Эдик предлагал использовать событие перерисовки родительского виджета, и это более удачный вариант чем твой |
|
|
|
|
Litkevich Yuriy |
26.3.2010, 13:24
Сообщение
#24
|
![]() разработчик РЭА ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Сомодератор Сообщений: 9669 Регистрация: 9.1.2008 Из: Тюмень Пользователь №: 64 Спасибо сказали: 807 раз(а) Репутация: 94
|
Цитата(Sokoloff @ 26.3.2010, 16:17) Link А чем рисование в родителе лучше чем самообслуживающийся виджет? тем, что можно взять произвольный виджет, а не только QLineEdit
|
|
|
|
|
KuZ |
26.3.2010, 19:02
Сообщение
#25
|
|
Студент ![]() Группа: Новичок Сообщений: 12 Регистрация: 13.12.2009 Пользователь №: 1303 Спасибо сказали: 0 раз(а) Репутация: 0
|
Вот возможно так:
CODE class LE : public QLineEdit { public: LE(QWidget *wgt = 0); protected: virtual void focusInEvent(QFocusEvent *); virtual void focusOutEvent(QFocusEvent *); }; CODE LE::LE(QWidget *wgt) : QLineEdit(wgt){} void LE::focusInEvent(QFocusEvent *e) { QLineEdit::focusInEvent(e); QPalette p = palette(); p.setColor(QPalette::Text,Qt::black); setPalette(p); setText(text() == "Enter Text" ? "" : text()); } void LE::focusOutEvent(QFocusEvent *e) { QLineEdit::focusOutEvent(e); QPalette p = palette(); p.setColor(QPalette::Text,Qt::gray); setPalette(p); setText(text().isEmpty() ? "Enter Text" : text()); } только если набраный текст Enter Text, то "ошибка" чето придумать можно чтоб подобный вариант работал. |
|
|
|
|
SABROG |
27.3.2010, 3:46
Сообщение
#26
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1207 Регистрация: 8.12.2008 Из: Russia, Moscow Пользователь №: 446 Спасибо сказали: 229 раз(а) Репутация: 34
|
В Qt 4.7 должен появится метод setPlaceholderText. В Qt 4.6 он уже реализован, но не доступен. Видимо тролли нас хотят удивить, ну или еще не все отладили. Метод работает, но достучаться можно только через хак:
|
|
|
|
|
z0D5e8n7x |
30.3.2010, 18:19
Сообщение
#27
|
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 23.3.2010 Пользователь №: 1554 Спасибо сказали: 0 раз(а) Репутация: 0
|
чет у меня все криво и косо ((
опять поправил - Link |
|
|
|
![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 17.12.2025, 7:22 |