• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

WM_ и диаловые окна

  • Автор темы iktomy
  • Дата начала
Статус
Закрыто для дальнейших ответов.
I

iktomy

Доброго времени суток!
Есть такая трабла: имеется немодальное диалоговое окно, из него вызывается модальный диалог. Хочу узнать, какое WM_ получает первый немодальный диалог, когда закрываю второй (модальный), т.е. когда первый диалог становится активным. Просто нужно обновить данные в таблице первого диалога (во втором они добавляются). Перепробовал наверное все WM_ - никакого эфекта.
 
B

BAPBAP

По моему немодальному окну никакого сообщения не посылается. Но ты сам можешь определить частное сообщение как
#define PM_REFRESH WM_USER+0
а из модального окна отправить послать сообщение немодальному с помощью функции SendMessage. Жаль, пример привести не смогу, документация сейчас не под рукой.
ЗЫ: надеюсь ты догадался, что в цикле обработки сообщний немодального окна надо добавить еще один переключатель switch для нашего нового сообщения PM_REFRESH :rolleyes: .
 
I

iktomy

Нетушки, слабоват я пока в API и поэтому пишу в MFC
 
M

Mustang

тада я ваще проблемы не ловлю...
если ты открываешь модальный диалог (насколько я понимаю - всё происходит в одном потоке!)
то выполнение программы не двинется дальше, пока функция DoModal(); не вернёт управление.
короче:
Код:
void CMyFirstDlg::OnShowButtonClick()
{
  SecondDlg  m_dlg; // - твой модальный диалог
  m_dlg.DoModal();  //после этой функции твоего диалога уже нет!
  .................
  .................   
  //производим обновление своего окна.
}
 
I

iktomy

Ладно, растусую поподробнее. Первое немодальное диалоговое окно содержит элемент Таблица (Grid), который выводит данные из базы MySQL. Данные вводятся в базу из второго окна, модального. Сразу я пытался сделать так, что бы при вызове WM_DESTROY или WM_CLOSE, или вообще уничтожения другим способам модального окна в первом окне срабатывала функция, которая и выводит данные в таблицу. Но выдавалась ошибка о неправильном обращении к памяти. Дык вот, перепробовав все WM_ для первого немодального окна, я так и не добился того, что бы при активации окна (полосочка с заголовком меняет цвет с серого на синий (ну у кого как)). Вот так :D .
 
R

RDN_ResidentS

Народ! Помогите пожалуйста!!!! У меня тоже проблема с программой которая использует немодальное диалоговое окно. Когда я запускаю программу, она выдает странные ошибки. Пробывал разобраться, так ничего и не помогло, я только начинаю изучать MFC и тут такие траблы...
 

Вложения

  • EX07A.rar
    44,1 КБ · Просмотры: 169
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!