пара вопросов про окно, которое "поверх остальных"

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
NightStorm
Новичок
Новичок
 
Сообщения: 33
Зарегистрирован: 09.06.2008 (Пн) 18:30

пара вопросов про окно, которое "поверх остальных"

Сообщение NightStorm » 22.06.2008 (Вс) 14:39

проблема такая:
в основном окне программы есть кнопочка, при нажатии на неё показывается другое маленькое окошечко, которое через SetWindowPos ставится поверх всех остальных, соответственно. Возникло две вопроса:
1) как сделать так, чтобы при клике в этом окне на любой контрол или на саму форму остальные открытые окна программы не появлялись?
2) как оставить это окно не заблокированным, если в программе показывается какое-нибудь модальное окно?

BV
Thinker
Thinker
Аватара пользователя
 
Сообщения: 3987
Зарегистрирован: 12.09.2004 (Вс) 0:55
Откуда: Молдавия, г. Кишинёв

Сообщение BV » 22.06.2008 (Вс) 16:11

1. Не понял вопроса. Вообще, ты в курсе, что
MSDN писал(а):When a non-topmost window is made topmost, its owned windows are also made topmost. Its owners, however, are not changed.


2. vbModeless?
const char *out = "|*0>78-,+<|"; size_t cc = char_traits<char>::length(out);
for (size_t i=0;i<cc;i++){cout<<static_cast<char>((out[i]^89));}cout<<endl;

NightStorm
Новичок
Новичок
 
Сообщения: 33
Зарегистрирован: 09.06.2008 (Пн) 18:30

Сообщение NightStorm » 22.06.2008 (Вс) 16:36

1.
When a non-topmost window is made topmost, its owned windows are also made topmost. Its owners, however, are not changed.

Читал такое. Моя форма, которая "is made topmost", она "owned".

Не понял вопроса

Короче говоря:
Запускаю прогу. Показывается главное окно. Жму там кнопку, показывается маленькая формочка, которая ставится поверх остальных окон. Если например запустить IE (или ещё чего), то естественно ИЕ закрывает собой главное окно моей проги, но окошко, которое "topmost", остаётся видимым. Надо, чтобы при проведения какой-либо операции с этим окошком (перемещение, нажатие в нём кнопки и т.д. и т.п.) главная форма не показывалась (не вылезала перед ИЕ).

2.
Не совсем понял, чем мне vbModeless помочь может.
Может опять не так спросил... Попробую так:
Та же история, что в п. 1. Запустил прогу, нажал кнопочку, вызвал это topmost окошечко. Но тут при нажатии на другую кнопку в главном окне показывается третья форма (модальная). Topmost окошечко, как и главное окно, при этом блокируется. Я конечно понимаю, что на то оно и модальное, но может можно это как-то обойти? Чтоб главное окно оставалось заблокированным, а этому topmost было пофиг на модальные формы

NightStorm
Новичок
Новичок
 
Сообщения: 33
Зарегистрирован: 09.06.2008 (Пн) 18:30

Сообщение NightStorm » 23.06.2008 (Пн) 14:43

Кое-как раскурил, тему можно закрыть :)


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex-бот и гости: 40

    TopList