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

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

Страниц: [1] 2   Вниз
  Печать  
Автор Тема: как свернуть QComboBox  (Прочитано 9116 раз)
karlson
Гость
« : Декабрь 30, 2005, 14:30 »

как программно "свернуть" комбобокс
для его разорачивания использовался метод popup().
а есть ли что нить обратное ему?
Записан
Racheengel
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2679


Я работал с дискетам 5.25 :(


Просмотр профиля
« Ответ #1 : Декабрь 30, 2005, 14:40 »

может close()?
Записан

What is the 11 in the C++11? It’s the number of feet they glued to C++ trying to obtain a better octopus.

COVID не волк, в лес не уйдёт
zlatko
Гость
« Ответ #2 : Декабрь 30, 2005, 14:47 »

или setCurrentItem()  :roll:
Записан
karlson
Гость
« Ответ #3 : Декабрь 30, 2005, 21:42 »

close() не подходит
а вот SetCurrentItem() - попробую

добавлено спустя 1 час 4 минуты:

 SetCurrentItem() - не работает.
понять не могу куда копать =(
Записан
Dendy
Гость
« Ответ #4 : Январь 03, 2006, 10:21 »

Код:
QWidget * popupWidget = qApp->activePopupWidget();
if ( popupWidget )
  popupWidget->close();
Записан
karlson
Гость
« Ответ #5 : Январь 04, 2006, 23:17 »

popupWidget - это я так понимаю мой комбо бокс
а qApp - это класс приложения который описывается в main.cpp?
Записан
Steven_Orko
Гость
« Ответ #6 : Январь 04, 2006, 23:51 »

Нет, qApp - это глобальная переменная. См. Assistent
Записан
Dendy
Гость
« Ответ #7 : Январь 05, 2006, 10:01 »

popupWidget - текущее активное вьІпадающее окно, в данном случае - список от комбо-бокса. Вообще не самьІй хороший способ. Пробуй осё:

Код:
if ( myComboBox->view() )
    myComboBox->view()->close();
Записан
karlson
Гость
« Ответ #8 : Январь 05, 2006, 23:45 »

Код:
if ( myComboBox->view() )
    myComboBox->view()->close();
[/quote]

вот что говорят

.ui/../mainform.ui.h:131: error: 'class QComboBox' has no member named 'view'
Записан
Dendy
Гость
« Ответ #9 : Январь 06, 2006, 09:59 »

А яка версія Qt ?
Записан
karlson
Гость
« Ответ #10 : Январь 06, 2006, 14:54 »

3.3.4
сорри что сразу не написал

а можно поподробнее насчет qApp
Записан
Dendy
Гость
« Ответ #11 : Январь 06, 2006, 15:19 »

Як маленькі. У Qt 3.3:

Код:
if ( myComboBox->listBox() )
    myComboBox->listBox()->close();
Записан
karlson
Гость
« Ответ #12 : Январь 06, 2006, 16:18 »

вот код и почему то не работает
=(((

void mainform::keyPressEvent( QKeyEvent *e )
{   
    int kla = e->key();
    switch (kla) {
    case Key_F11:   {
       check_comboboxes();
       LeftDriveBox->popup();
       break;    
       }
    case Key_F12:   {
       check_comboboxes();
       RightDriveBox->popup();  
       break;
   }
    }
}


void mainform::check_comboboxes()
{
    if ( LeftDriveBox->listBox() ) {   
   LeftDriveBox->listBox()->close();
    }
        if ( RightDriveBox->listBox() ) {   
   RightDriveBox->listBox()->close();
    }

}
Записан
Dendy
Гость
« Ответ #13 : Январь 06, 2006, 18:14 »

Qt 4:

Код:
if ( myComboBox->listBox() ) 
    myComboBox->listBox()->window()->close();
Записан
karlson
Гость
« Ответ #14 : Январь 06, 2006, 18:33 »

у мя qt 3.3.4
Записан
Страниц: [1] 2   Вверх
  Печать  
 
Перейти в:  


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