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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Установка фокуса на виджет в QSplitter  (Прочитано 5376 раз)
BagmutA
Гость
« : Август 09, 2011, 16:36 »

Как установить фокус на необходимый мне виджет в QSplitter(по умолчанию он установлен на 0 виджет).
Код
C++ (Qt)
spliter->widget(1)->setFocus();
не помогает
Записан
SeverusSnape
Гость
« Ответ #1 : Август 09, 2011, 17:25 »

widget->setFocus()
Записан
SeverusSnape
Гость
« Ответ #2 : Август 09, 2011, 17:26 »

то есть обращаться к конкретному виджету в сплиттере напрямую
Записан
SeverusSnape
Гость
« Ответ #3 : Август 09, 2011, 17:27 »

как вариант
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #4 : Август 09, 2011, 17:30 »

widget->setFocus()
А что, ТС не тоже самое делает?
Записан

Qt 5.11/4.8.7 (X11/Win)
BagmutA
Гость
« Ответ #5 : Август 09, 2011, 18:17 »

В QSplitter я добавляю два виджета:
Код
C++ (Qt)
spl = new QSplitter(Qt::Horizontal);
treeView = new QTreeView;
PreviewList = new QListView;
spl->addWidget(treeView );
spl->addWidget(PreviewList);
но ни
Код
C++ (Qt)
spl->widget(1)->setFocus();
, ни
Код
C++ (Qt)
PreviewList->setFocus();
не помогает, в фокусе остается treeView.
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #6 : Август 09, 2011, 18:21 »

Попробуй по таймеру
Код
C++ (Qt)
QTimer::singleShot( 100, PreviewList, SLOT( setFocus() ) );
Записан

Qt 5.11/4.8.7 (X11/Win)
BagmutA
Гость
« Ответ #7 : Август 09, 2011, 18:58 »

Попробуй по таймеру
Код
C++ (Qt)
QTimer::singleShot( 100, PreviewList, SLOT( setFocus() ) );
Спасибо, это помогло.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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