mdiArea->closeActiveSubWindow() - глюк или так и должно быть ?, Если открыто много окошек, то при закрытии первого активным становитьс |
Здравствуйте, гость ( Вход | Регистрация )
mdiArea->closeActiveSubWindow() - глюк или так и должно быть ?, Если открыто много окошек, то при закрытии первого активным становитьс |
potkin |
15.12.2010, 13:37
Сообщение
#1
|
Студент Группа: Участник Сообщений: 77 Регистрация: 18.6.2010 Пользователь №: 1819 Спасибо сказали: 0 раз(а) Репутация: 0 |
Юзаю виджет mdiArea.
Проблема: Если открыто много окошек в mdiArea, то при закрытии N-го окна, активным становиться N+1 или при закрытии последнего окна активным становиться первое. Так же и в примерах: "Main Windows -> MDI" Мне такой расклад не подходит. Мне надо, что бы при закрытии Чилда активным стало не следующее окошко, а предыдущее, то есть при закрытии N-го окна, активным становиться N-1 Можно конечно и цикл использовать:
пробегать по всем Чилдам и проверять "что-то", но это менингит. Может есть более лёгкий способ ??? Заранее спасибо. |
|
|
potkin |
16.12.2010, 10:27
Сообщение
#2
|
Студент Группа: Участник Сообщений: 77 Регистрация: 18.6.2010 Пользователь №: 1819 Спасибо сказали: 0 раз(а) Репутация: 0 |
Всё таки циклом ...
Делаю так:
В "toolTip()" присваиваю уникальный идентификатор и по нём и ищу. П.С. Может есть всё таки какие-то встроенные средства ??? |
|
|
Алексей1153 |
16.12.2010, 10:44
Сообщение
#3
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
а ассоциацию применить нельзя разве ? Коли уж идентификатор уникальный
Кстати, от foreach у меня один негатив остался - он (и это написано в доке) сначала делает копию контейнера и только копию шмонает. (Я пользуюсь циклом for с итератором) |
|
|
BRE |
16.12.2010, 10:59
Сообщение
#4
|
Профессионал Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44 |
Кстати, от foreach у меня один негатив остался - он (и это написано в доке) сначала делает копию контейнера и только копию шмонает. (Я пользуюсь циклом for с итератором) А почему ты думаешь, что копирование Qt-контейнера такая тяжелая операция (грубо говоря это инкремент счетчика). А вот реально копия будет сделана только, если при попытке его модификации (точнее при вызове не константного метода). |
|
|
Алексей1153 |
16.12.2010, 11:16
Сообщение
#5
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
BRE, я об этом не думаю, мне просто не требуется такое поведение, ведь я ХОЧУ менять исходный контейнер через итераторы, а тут такая подстава Я первый раз долго не мог понять , что происходит. Потом меня в доку ткнули
|
|
|
potkin |
16.12.2010, 13:47
Сообщение
#6
|
Студент Группа: Участник Сообщений: 77 Регистрация: 18.6.2010 Пользователь №: 1819 Спасибо сказали: 0 раз(а) Репутация: 0 |
Алексей1153,
Цитата а ассоциацию применить нельзя разве ? Коли уж идентификатор уникальный А можно поподробнее ... ? |
|
|
Алексей1153 |
16.12.2010, 15:13
Сообщение
#7
|
фрилансер Группа: Участник Сообщений: 2941 Регистрация: 19.6.2010 Из: Обливион Пользователь №: 1822 Спасибо сказали: 215 раз(а) Репутация: 34 |
я не знаю подробностей, ты их знаешь А говорю про, например. std::map
|
|
|
Текстовая версия | Сейчас: 28.12.2024, 0:24 |