![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
QMainWindow |
![]() ![]()
Сообщение
#1
|
Участник ![]() ![]() Группа: Участник Сообщений: 198 Регистрация: 1.8.2010 Пользователь №: 1922 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Привет всем!
Появился непонятный глюк с QTextEdit. В общем создал свой класс, который наследует только QTextEdit. В классе пока (теперь) ничего нет. Создаю объект в главном окне (на центральном виджете). Устанавливаю геометрию сего виджета и все. Запускаю, все нормально отображается. Далее ввожу текст в мое поле, пытаюсь выделить посимвольно, но ничего не получается. Удается выделить только либо все слово целиком, либо всю строку (или параграф). Т.е. отдельные буквы в слове мышью не получается выделить (когда мышью пытаюсь выделить, даже синей подсветки выделения НЕТ!). Думал какие глюки, для проверки создал непосредственно объект QTextEdit - но там все как и должно быть. Что за бред? Сообщение отредактировал QMainWindow - 5.8.2011, 14:32 |
|
|
PAFOS |
![]()
Сообщение
#2
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 258 Регистрация: 27.12.2010 Из: Дмитров Пользователь №: 2309 Спасибо сказали: 29 раз(а) Репутация: ![]() ![]() ![]() |
Все работает как надо ![]() |
|
|
QMainWindow |
![]()
Сообщение
#3
|
Участник ![]() ![]() Группа: Участник Сообщений: 198 Регистрация: 1.8.2010 Пользователь №: 1922 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Класс:
Раскрывающийся текст
Раскрывающийся текст
MainWindow: Раскрывающийся текст
Раскрывающийся текст
Что не так? |
|
|
PAFOS |
![]()
Сообщение
#4
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 258 Регистрация: 27.12.2010 Из: Дмитров Пользователь №: 2309 Спасибо сказали: 29 раз(а) Репутация: ![]() ![]() ![]() |
Цитата void TextEdit::mouseMoveEvent(QMouseEvent *e) { // if(mw->windowState() == Qt::WindowFullScreen) // { // if(!e->y()) emit showMenu(); // else emit hideMenu(); // } } у тебя mouseMoveEvent перекрывается производным классом и до QTextEdit не доходит вообще. В этом и кроется беда. Решение: Цитата void TextEdit::mouseMoveEvent(QMouseEvent *e) { QTextEdit::mouseMoveEvent(e); // if(mw->windowState() == Qt::WindowFullScreen) // { // if(!e->y()) emit showMenu(); // else emit hideMenu(); // } } или Цитата void TextEdit::mouseMoveEvent(QMouseEvent *e) { // if(mw->windowState() == Qt::WindowFullScreen) // { // if(!e->y()) emit showMenu(); // else emit hideMenu(); // } QTextEdit::mouseMoveEvent(e); } Выбирай сам ![]() |
|
|
QMainWindow |
![]()
Сообщение
#5
|
Участник ![]() ![]() Группа: Участник Сообщений: 198 Регистрация: 1.8.2010 Пользователь №: 1922 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Гениально!
Вот уж не подумал бы, что тут надо аргумент специально передавать... |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 9.12.2023, 5:56 |