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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: raise формы скрывает qcombobox  (Прочитано 4973 раз)
admsasha
Гость
« : Июль 16, 2011, 17:38 »

Есть форма на ней расположены qcombobox.

Выявился вот такой глюк. Когда делаю форме raise (по таймеру, либо по событию), то список qcombobox скрывается за формой. Что можно сделать ?

пробывал так:
this->raise();
combobox1->raise();

Не помогло.

---
QT 4.7.2
windows XP
« Последнее редактирование: Июль 16, 2011, 17:43 от admsasha » Записан
admsasha
Гость
« Ответ #1 : Июль 17, 2011, 06:54 »

Влаживаю компиляберный пример.

Под Linux (QT 4.7.1) такого глюка нет. А вот под windows есть...

Нужно запустить программу, нажать раскрыть список и подождать секунду. Эффект думаю, будет виден.
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #2 : Июль 17, 2011, 09:18 »

ну не рейзите форму, чо
Записан
admsasha
Гость
« Ответ #3 : Июль 17, 2011, 09:38 »

ну не рейзите форму, чо
Хорошо, чем заменить его ? Нужно чтобы форма всегда была поверх других. Даже, если появляется окно с WindowStaysOnTopHint.
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #4 : Июль 17, 2011, 09:47 »

След вопрос - зачем? Во первых такие окна редкость. Во вторых юзер ожидает что ваше окно будет себя вести также как все остальные.
На самом деле моя претензия про рейз была к тому, что если у вас открыт комбобокс, то окно _заведомо_ уже рейзнутое (нельзя активировать мышкой контрол на форме не сделав ее активной) и его рейзить в этот момент не надо
Записан
admsasha
Гость
« Ответ #5 : Июль 17, 2011, 10:04 »

След вопрос - зачем? Во первых такие окна редкость. Во вторых юзер ожидает что ваше окно будет себя вести также как все остальные.
На самом деле моя претензия про рейз была к тому, что если у вас открыт комбобокс, то окно _заведомо_ уже рейзнутое (нельзя активировать мышкой контрол на форме не сделав ее активной) и его рейзить в этот момент не надо
Юзер ничего не ожидает. Нужна программа для личного пользования. Есть офис где часто попадаются баннеры-вымогатели (там где за что-то отправить sms нужно). Не знаю где они ходят. Я хочу сделать программу которая поверх этого банера будет отображаться информация и в combobox предлагаться действия (снять баннер, игнорировать и т.д.). Тот баннер постоянно рейзиться. Если combobox заменить на кнопки, то всё хорошо работает. Но хочется именно combobox.

Чтобы снять сомнения, что я сам не пишу вирусы, зайдите на сайт: http://dansoft.krasnokamensk.ru не одной плохой программы вы не увидете.
Записан
Авварон
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 3260


Просмотр профиля
« Ответ #6 : Июль 17, 2011, 10:08 »

Антивирус им поставьте лучше:)
Записан
admsasha
Гость
« Ответ #7 : Июль 17, 2011, 10:11 »

Антивирус им поставьте лучше:)
Антивирус бесполезен. Стоит лицензионный и ежечасно обновляется. Но к моему вопросу это никакого отношения не имеет.
Записан
Гурман
Гуру общения
******
Offline Offline

Сообщений: 1442

Qt 2.2, 3.3, 4.5, 4,7, 4.8, 5.3, 5.6, 5.9, 5.12


Просмотр профиля
« Ответ #8 : Июль 17, 2011, 15:44 »

там не антивирус нужен, а дефендер типа COMODO, только грамотно настроенный - и вымогатели будут зарезаны на корню

кстати, и антивирус COMODO с его же фаерволом тоже стоит поставить, причем все это совершенно бесплатный софт
Записан

2^7-1 == 127, задумайтесь...
_OLEGator_
Гость
« Ответ #9 : Июль 19, 2011, 15:45 »

В твоем случае это должно помочь

Код
C++ (Qt)
combobox1->view()->parentWidget()->raise();
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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