![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Насколько это корректно?
Kerk © (2005-02-07 08:24:00)Ковыряю исходники. Наткнулся на такое:
MessageBox( GetForegroundWindow(), 'Plugin loading is failed', nil, MB_OK);
сабж?
КаПиБаРа (2005-02-07 09:02:00) [21]Kerk © (07.02.05 8:54) [5]
Одно дело если твоя программа занимается подсчетом мух в комнате или ворон за окном и каждую минуту радосно сообщает об этом пользователю выволя окно поверх всех.
Другое дело когда пользователь запускает длительный процесс, но у программы возникли сложности требующие немедленного решения пользователя для продолжения процесса. Например окно о том что диск требуется очистить или финализировать нужно вывести поверх всех окон, а окно с сообщением "Диск записан" не нужно выводить поверх всех окон.
Думкин (2005-02-07 08:57:00) [22]> [4] КаПиБаРа © (07.02.05 08:50)
А если поморгать в панели задач?
Kerk (2005-02-07 08:54:00) [23]КаПиБаРа © (07.02.05 8:50) [4]
Так нужно или нет MessageBox поверх текущего активного окна показывать?
все же думаю, что нет. ты же не знаешь, что там в активном окне происходит?
КаПиБаРа (2005-02-07 08:50:00) [24]Kerk © (07.02.05 8:40) [3]
Знаете программу Nero? Я между делом записываю диск. Нажимаю кнопку записи и продолжаю дальше работать. Минут через 10-20 смотрю как там диск пишется. А Nero решил у меня узать нужно ли финализировать диск. И вывел это окно поверх своего, а не того в котором я работал. Получается - 20 минут Nero балду гонял, а диск не записан. У меня в такой момент вырывается слово из 5 букв с мягким знаком на конце.
Так нужно или нет MessageBox поверх текущего активного окна показывать?
Kerk (2005-02-07 08:40:00) [25]КаПиБаРа © (07.02.05 8:36) [2]
Так что если автор хотел что бы пользователь сразу увидел сообщение, то сделано вполне корректно.
имхо нифига!! ибо MessageBox модальный!!! нефиг его поверх текущего активного окна показывать!!
КаПиБаРа (2005-02-07 08:36:00) [26]Суть даной конструкции заключается в том, что owner'ом сообщению назначется верхнее окно. А т.к. сообщение отрисовывается поверх owner'а, то какое бы нибыло окно в текущей момент активно пользователь увидит сообщение.
Если передать handle конкретного окна, то оно может оказаться закрыто другим окном во время вывода данного сообщения и пользователь его не увидит сразу.
Так что если автор хотел что бы пользователь сразу увидел сообщение, то сделано вполне корректно.
GuAV (2005-02-07 08:26:00) [27]IHMHO не корректно. Главное прилжение должно передать плагину хеднл.