0 / 0 / 0
Регистрация: 06.12.2018
Сообщений: 17
|
|
1 | |
QTabWidget пропадает содержимое вкладки при переключении на другую30.11.2019, 17:23. Показов 2291. Ответов 18
Товарищи, подскажите, что за чудо такое когда GridLayout с содержимым во вкладке пропадает при переключении на другую вкладку, а при повторной попытки его отобразить в первой вкладке появляется содержимое второй. слегка запутано, но так и есть
0
|
|
30.11.2019, 17:23 | |
Ответы с готовыми решениями:
18
Пропадают вкладки при переключении Тормозит setInterval при переключении вкладки Пропадает окантовка форм при переключении между табами |
фрилансер
4927 / 4576 / 966
Регистрация: 11.10.2019
Сообщений: 11,976
|
|
30.11.2019, 19:32 | 2 |
Бодян, форму накидывал в дизайнере или вручную?
0
|
0 / 0 / 0
Регистрация: 06.12.2018
Сообщений: 17
|
|
30.11.2019, 21:17 [ТС] | 3 |
Алексей1153,Вручную, неужели поэтому?
0
|
фрилансер
4927 / 4576 / 966
Регистрация: 11.10.2019
Сообщений: 11,976
|
|
30.11.2019, 21:27 | 4 |
Бодян, видимо, какой-то косячок допустил
![]() прицепи проект, посмотрю
0
|
0 / 0 / 0
Регистрация: 06.12.2018
Сообщений: 17
|
||||||
30.11.2019, 21:39 [ТС] | 5 | |||||
Алексей1153, все получилось спасибо, почему то в Layout неадекватно добавлялся объект из контейнерного класса. Решил используя такое:
0
|
фрилансер
4927 / 4576 / 966
Регистрация: 11.10.2019
Сообщений: 11,976
|
|
30.11.2019, 21:51 | 6 |
0
|
0 / 0 / 0
Регистрация: 06.12.2018
Сообщений: 17
|
|
30.11.2019, 21:57 [ТС] | 7 |
Алексей1153, Самодельный класс, с предком QLabel.
0
|
фрилансер
4927 / 4576 / 966
Регистрация: 11.10.2019
Сообщений: 11,976
|
|
30.11.2019, 22:02 | 8 |
Бодян, субклассинг должОн работать, если всё правильно сделано. В частности, не забыть макрос Q_OBJECT и передать parent в конструктор родительского типа
1
|
0 / 0 / 0
Регистрация: 06.12.2018
Сообщений: 17
|
|
30.11.2019, 22:10 [ТС] | 9 |
Алексей1153, такого я даже не учёл, спасибо, поправлю, ради интереса попробую еще раз. А если вот так обозвать конструктор class label : public QLabel {} . Так не наследуется все подряд вместе с макросами?
0
|
фрилансер
4927 / 4576 / 966
Регистрация: 11.10.2019
Сообщений: 11,976
|
||||||
30.11.2019, 22:17 | 10 | |||||
макросы не наследуются
1
|
0 / 0 / 0
Регистрация: 06.12.2018
Сообщений: 17
|
|
30.11.2019, 22:28 [ТС] | 11 |
Алексей1153, вас понял) спасибо ещё раз, завтра тогда проверю
0
|
0 / 0 / 0
Регистрация: 06.12.2018
Сообщений: 17
|
|||||||||||
01.12.2019, 09:21 [ТС] | 12 | ||||||||||
Алексей1153, попробовал сделать с учётом субклассинга
0
|
фрилансер
4927 / 4576 / 966
Регистрация: 11.10.2019
Сообщений: 11,976
|
|
01.12.2019, 09:26 | 13 |
Бодян, сделай полный ребилд проекта
Добавлено через 40 секунд и, кстати, #include <QLabel> #include <QString>
0
|
![]() |
|||||||||||
01.12.2019, 09:36 | 14 | ||||||||||
![]() Решение
Никаких чудес нет, вот пример, все отображается как и должно.
1
|
0 / 0 / 0
Регистрация: 06.12.2018
Сообщений: 17
|
|
01.12.2019, 11:59 [ТС] | 15 |
insite2012, вы правы, делал в дизайнере упустил Layout и все непонятно собирается теперь. Я ведь правильно понял, что должна выполняться цепочка Layout->Widget->layout ?
0
|
![]() |
|
01.12.2019, 12:40 | 16 |
Плохая практика. Учитесь делать все руками, чтобы понимать то, что происходит. Я стараюсь не использовать дизайнер вообще, максимум-растянуть созданную по умолчанию форму. Все остальное нужно писать руками, инструменты для этого есть.
Смотря как компоновать. В один менеджер компоновки можно добавить другой, в него же можно добавить и виджеты. Все зависит от ваших требований. Если это в голове не укладывается, возьмите лист бумаги, нарисуйте как и что должно быть расположено, и потом стройте интерфейс кодом.
0
|
фрилансер
4927 / 4576 / 966
Регистрация: 11.10.2019
Сообщений: 11,976
|
|
01.12.2019, 12:54 | 17 |
да ничего плохого нет. Разобраться, как устроено - это полезно и нужно. Это обязательно пригодится.
Но дизайнер экономит время. Если по-прежнему хочется ковыряться в деталях, то первоначальный макет набрасывается в дизайнере, а потом можно нырять с головой в детализацию. Вообще, по моим наблюдениям, эти два процесса обычно не пересекаются: там, где пригоден дизайнер, в коде формы и не требуется ковыряться руками. А там, где только вручную можно сделать, там дизайнер и не поможет (разве что тот же макет накидать и посмотреть, как что-либо делается, чтобы потом это знание использовать вручную)
0
|
0 / 0 / 0
Регистрация: 06.12.2018
Сообщений: 17
|
|
01.12.2019, 13:17 [ТС] | 18 |
insite2012, а как насчет QtQuick ? Может рациональнее в нём собирать?
0
|
![]() |
|
01.12.2019, 15:57 | 19 |
Можно и в нем, почему нет. Но там немного другая концепция. Я пока в него глубоко не вдавался, так, немного поэкспериментировал, чуть позже постепенно займусь. Он, конечно, нужен, поскольку у меня есть кое-какие проекты, которые успешно работают на Windows, и их желательно бы портировать на Android (для расширения группы потенциальных пользователей).
Одна из сложностей, как я понял, при использовании QtQuick заключается в его связи с основным кодом на С++, если проект чуть посложнее чем HelloWorld. Как минимум, придется написать класс-прокси, обеспечивающий сигнально-слотовые соединения между интерфейсом и бизнес-логикой. Конечно, если рабочий класс на С++ всего один то это просто, но когда их несколько, и с использованием наследования и прочего, задача усложняется. Но все решаемо.
1
|
01.12.2019, 15:57 | |
Помогаю со студенческими работами здесь
19
При переключении между программами пропадает текст в RadioGroup
Поменять местами вкладки в QTabWidget Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |