Как сохранить Qt::AlignLeft для QLineEdit при уменьшении его размера при сдвиге сплиттера? |
Здравствуйте, гость ( Вход | Регистрация )
Как сохранить Qt::AlignLeft для QLineEdit при уменьшении его размера при сдвиге сплиттера? |
Steklova Olga |
2.11.2011, 16:06
Сообщение
#1
|
Участник Группа: Участник Сообщений: 198 Регистрация: 27.9.2011 Из: Санкт-Петербург Пользователь №: 2912 Спасибо сказали: 5 раз(а) Репутация: 4 |
Здравствуйте! Работаю с Qt 4.7, Firebird 2.1.
У меня есть горизонтальный сплиттер splitter_Horiz, к которому подключены виджеты widget_left и widget_right. Для widget_left установлен GridLayout (в 0-м столбце - Label'ы, в 1-м столбце - LineEdit'ы). Есть DataWidgetMapper, к которому подключены LineEdit'ы. В полях таблицы, установленной для модели, записаны строки до 30 символов или числа. Когда перемещаю сплиттер влево, ширина LineEdit'ов уменьшается и строки полностью уже не помещаются. Но при этом левое выравнивание в LineEdit'ах на глазах превращается в правое, а мне хотелось бы сохранить левое. Подскажите, пожалуйста, как это сделать? |
|
|
Steklova Olga |
29.12.2011, 11:03
Сообщение
#2
|
Участник Группа: Участник Сообщений: 198 Регистрация: 27.9.2011 Из: Санкт-Петербург Пользователь №: 2912 Спасибо сказали: 5 раз(а) Репутация: 4 |
Да, конечно, BlueIceScream, Вы правы! Вы снова радуете прекрасным, толковым ответом!
С наступающим новым годом, и всего самого доброго Вам и Вашим близким! Остался еще вопрос про QLineEdit. У меня в lineEdit'ах отображаются данные mapper'а, при этом мне надо только отображать данные, редактировать их не надо. Чтобы lineEdit'ы никак не реагировали на нажатия кнопок мыши выполняю следующие действия:
Осталась не обработанной следующая ситуация. Если оператор сделает двойной клик по тексту в одном lineEdit'е, то этот текст будет выделен синим фоном, если затем он сделает двойной клик по тексту в другом lineEdit'е, то этот текст тоже будет выделен синим фоном. А мне надо, чтобы текст не выделялся. Что для этого надо сделать? |
|
|
wiz29 |
29.12.2011, 14:29
Сообщение
#3
|
Старейший участник Группа: Участник Сообщений: 600 Регистрация: 7.7.2010 Из: Санкт-Петербург Пользователь №: 1866 Спасибо сказали: 94 раз(а) Репутация: 12 |
Если оператор сделает двойной клик по тексту в одном lineEdit'е, то этот текст будет выделен синим фоном, если затем он сделает двойной клик по тексту в другом lineEdit'е, то этот текст тоже будет выделен синим фоном. А мне надо, чтобы текст не выделялся. Что для этого надо сделать? Есть несколько путей решения: 1. Долгий - перехватывать и игнорировать определенный набор событий для соответствующего QLineEdit 2. Заменить QLineEdit на QLabel для отображения статических данных |
|
|
Текстовая версия | Сейчас: 12.11.2024, 9:09 |