Russian Qt Forum
Ноябрь 27, 2024, 16:07 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: popup на базе QAbstractScrollArea  (Прочитано 3077 раз)
mugabe
Гость
« : Май 18, 2009, 11:51 »

пытаюсь сделать попап-окошко на базе QAbstractScrollArea, что-то вроде:
Код
C++ (Qt)
class ScrollAreaPopup: public QAbstractScrollArea
{
   Q_OBJECT
public:
   ScrollAreaPopup(QWidget *parent = 0): QAbstractScrollArea(parent) {
     setWindowFlags(Qt::Popup);
   }
};
 

Далее делаю

ScrollAreaPopup *sp = new ScrollAreaPopup(this);
sp->show();

окошко появляется, но при клике вне его на родительском окне оно не исчезает.
Если же наследоваться от QFrame, то все в порядке.

В чем тут загвоздка?
Записан
mugabe
Гость
« Ответ #1 : Май 19, 2009, 04:03 »

Ну, же! Гуру, где вы все? Улыбающийся
Записан
Rcus
Гость
« Ответ #2 : Май 19, 2009, 07:18 »

/*Медитирует над руководством по OCaml, чувствует себя потерянным для императивного сообщества*/
QAbstractScrollArea не нужен тебе, текстов src/gui/widgets/qabstractscrollarea.cpp прочтение на путь истинный направит. QAbstractScrollArea в QWidget обернув обретешь задуманное.
Записан
mugabe
Гость
« Ответ #3 : Май 19, 2009, 12:22 »

Эти тексты читать пытался я.
Но не смог ум мой скудный познать, что же проблемы вызывает.
QAbstractScrollArea сам наследник QFrame. QFrame работает, QAbstractScrollArea - нет.

В QWidget оборачивать не хотелось бы, но пока что, пожалуй, так и поступлю.
Записан
Rcus
Гость
« Ответ #4 : Май 19, 2009, 12:52 »

Декоратором QAbstractScrollArea является, а потому события направленные ему игнорирует, viewport'у направляет.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.196 секунд. Запросов: 21.