|
184 / 176 / 57
Регистрация: 25.09.2014
Сообщений: 834
|
|
Модальность окон в разных графических оболочках09.11.2015, 22:20. Показов 2531. Ответов 4
Метки нет (Все метки)
Выручайте.
Есть мелкая тестовая программа на Qt из двух форм. Форма1 (на ней есть текстовое поле). Кликаем на текстовое поле - открывается Форма2. Форма2 - модальная. Вроде все просто. Однако одна и та же программа на разных дистрибутивах работает немного по-разному: На виртуалке debian 7 (gnome, если не ошибаюсь) вторая, модальная, форма запрещает переключаться на Форму1 через ALT-TAB. И это правильно. На raspbian (LXDE,openbox) вторая, модальная, форма НЕ запрещает переключение на Форму1 через ALT-TAB. И это неправильно. Из-за этого происходит некорректная работа программы - если на распберри быстро и часто кликать на текстовое поле Формы1, то Форма2 открывается и тут же уходит ЗА форму1 (при последующем клике, который как бы уходит к Форме1 ОПЯТЬ, пока не открылась форма2), чего быть не должно. То есть модальность фактически игнорируется. Кто-нибудь сталкивался? Что посоветуете протестировать? У забугорников вычитал, что с wine'ом у кого-то была похожая проблема, ибо вайн все окна считал немодальными и ребятам пришлось править исходники вайна... Но это не мой путь. Помогите выкрутиться как-то иначе. Добавлено через 6 часов 25 минут Никто?
0
|
|
| 09.11.2015, 22:20 | |
|
Ответы с готовыми решениями:
4
Пакет для управления вкладками графических окон (аналог tmux для GUI) Модальность диалоговых окон в Word Книги по создание графических окон??? |
|
184 / 176 / 57
Регистрация: 25.09.2014
Сообщений: 834
|
||||||
| 11.11.2015, 16:46 [ТС] | ||||||
Сообщение было отмечено SatanaXIII как решение
Решение
Решение крылось в оконном менеджере малинки и образа raspbian. Если образ от производителя и вы еще не шаманили с настройками экрана, то от оконного менеджера openbox откажитесь в пользу metacity. В консоли:
0
|
||||||
|
20 / 12 / 3
Регистрация: 13.08.2015
Сообщений: 75
|
|
| 12.11.2015, 01:16 | |
|
Не, не надо на оконный менеджер полагаться. Вообще это работает преимущественно в гноме, по крайней мере с привязкой к центру главного окна. Лучше ещё и явно блокировать Форму1 когда открывается Форма2. Удерживать фокус это не поможет, но от действий пользователя защитит.
0
|
|
|
184 / 176 / 57
Регистрация: 25.09.2014
Сообщений: 834
|
|
| 12.11.2015, 08:23 [ТС] | |
|
i1cu, Я на него и не полагался. Я уже все перепробовал в самом Qt - и с событиями игрался и с модальностью и проект простой для теста собирал. На гноме ОК, а на lxde с openbox - хрень с модальностью. Вот и решил таки сменить wm. Как видим - помогло. Тем более, проект будет жить только на этой плате, поэтому мне такое решение вполне подходит. Оставил свое решение для тех, кого оно тоже устроит.
Однако, мне интересно - какой вы вариант предложите? Как я понимаю, нужно решение в самом коде, чтобы оно не зависело от wm. Кстати модальность и так блокирует первую форму, но вот не мешает форме1 снова показаться уже после того, как была открыта модальная форма2, если мы быстро и часто кликали по форме1... И при ситуации, когда у юзера только тачскрин, а форма2 уже ушла за форму1 (и обе на весь экран) он ничего не сможет сделать.
0
|
|
|
20 / 12 / 3
Регистрация: 13.08.2015
Сообщений: 75
|
|
| 12.11.2015, 17:15 | |
|
0
|
|
| 12.11.2015, 17:15 | |
|
Помогаю со студенческими работами здесь
5
Написать программу с применением графических библиотек, для написания окон программы Создать несколько графических окон, постепенно всплывающих на рабочем столе по окружности, меняя цвет Создать изображение имеющие 5 графических элементов, 5 разных цветов, и 3 стиля заполнения фигур Создание 2-х окон разных классов Соединение двух разных окон Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2.
Данный документ берёт данные из другого нетипового документа. . .
|
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
|
|
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: реализовать программный контроль на предмет проведения документа. . .
|
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача:
1. Реализовать контроль заполнения реквизита. . .
|
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение:
DISM / Online / Add-Capability / CapabilityName:WMIC~~~~
Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
|
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: при создании документов установить период списания автоматически. . .
|