crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Не выделяется текст мышью в QTextEdit, Свой класс унаследован от QTextEdit
QMainWindow
  опции профиля:
сообщение 5.8.2011, 14:31
Сообщение #1


Участник
**

Группа: Участник
Сообщений: 198
Регистрация: 1.8.2010
Пользователь №: 1922

Спасибо сказали: 0 раз(а)




Репутация:   0  


Привет всем!
Появился непонятный глюк с QTextEdit. В общем создал свой класс, который наследует только QTextEdit. В классе пока (теперь) ничего нет. Создаю объект в главном окне (на центральном виджете). Устанавливаю геометрию сего виджета и все. Запускаю, все нормально отображается. Далее ввожу текст в мое поле, пытаюсь выделить посимвольно, но ничего не получается. Удается выделить только либо все слово целиком, либо всю строку (или параграф). Т.е. отдельные буквы в слове мышью не получается выделить (когда мышью пытаюсь выделить, даже синей подсветки выделения НЕТ!).
Думал какие глюки, для проверки создал непосредственно объект QTextEdit - но там все как и должно быть. Что за бред?

Сообщение отредактировал QMainWindow - 5.8.2011, 14:32
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
PAFOS
  опции профиля:
сообщение 5.8.2011, 15:12
Сообщение #2


Активный участник
***

Группа: Участник
Сообщений: 258
Регистрация: 27.12.2010
Из: Дмитров
Пользователь №: 2309

Спасибо сказали: 29 раз(а)




Репутация:   8  


Цитата
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);
}


Выбирай сам :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 22.12.2024, 16:37