Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.07.31;
Скачать: CL | DM;

Вниз

Как показать модальное окно после развертывания главного?   Найти похожие ветки 

 
Dr. Andrew   (2005-07-14 03:40) [0]

Необходимо автоматически показать модальное диалоговое окно "Подсказка дня" сразу же после развертывания главного окна программы на весь экран. Пожалуйста, мастера, подскажите небольшим практическим примером как эту задачу можно решить.
Всем спасибо!


 
Dr. Andrew   (2005-07-14 09:19) [1]

Уточнение.
Мои попытки прописать код вызова диалогового окна "Подсказка Дня" (Form2.ShowModal) в стандартные процедуры формы (onCreate, onShow, onResize) не привели к успеху. Может кто-то может подсказать путь решения этой проблемы?
Спасибо!


 
msguns ©   (2005-07-14 10:50) [2]

OnActivate с флажком 1-го вызова ?


 
sniknik ©   (2005-07-14 10:58) [3]


unit Unit1;

interface

uses
 Windows, Messages, Forms;

const
 WM_MYFOFMSHOW = WM_USER + 101;

type
 TForm1 = class(TForm)
   procedure FormShow(Sender: TObject);
 private
   procedure MyFormShow(var Msg: TMessage); message WM_MYFOFMSHOW;
 public
 end;

var
 Form1: TForm1;

implementation

uses Unit2;

{$R *.dfm}

procedure TForm1.FormShow(Sender: TObject);
begin
 PostMessage(Handle, WM_MYFOFMSHOW, 0, 0);
end;

procedure TForm1.MyFormShow(var Msg: TMessage);
begin
 Form2.ShowModal;
end;

end.


 
Dr. Andrew   (2005-07-14 11:23) [4]

sniknik!
Спасибо за конкретный пример!
Работает!
Вопрос к sniknik - все же какую функцию - SendMessage или PostMessage более рационально применить для этой задачи. Если SendMessage, то как изменится приведенный код? И в чем отличие?

msguns
Вопрос к Вам - что Вы конкретно имеете ввиду? Можете привести конкретный код Вашего решения?

Вопрос для всех - это единственное решение или есть еще возможности решить данную задачу?

Всем спасибо за помощь!


 
sniknik ©   (2005-07-14 11:50) [5]

> Если SendMessage, то как изменится приведенный код? И в чем отличие?
попробуй и узнаеш... ;о))

отличия - первый событие ставит в очередь и завершается, второй делает вызов и ждет результат. в справке это есть.

вот интерпретация чего имел ввиду msguns (копировать со всеми даже непонятным символами ;о)))

{$J+}
procedure TForm1.FormActivate(Sender: TObject);
const once: boolean = true;
begin
 if once then begin
   Form2.ShowModal;
   once:= false;
 end;
end;
{$J-}


 
Dr. Andrew   (2005-07-14 11:57) [6]

Спасибо всем!



Страницы: 1 вся ветка

Текущий архив: 2005.07.31;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.046 c
5-1091283097
xZero
2004-07-31 18:11
2005.07.31
Компонент


14-1120721677
Магнум
2005-07-07 11:34
2005.07.31
Delphi 5 and Delphi 2005


14-1121185633
БарЛог
2005-07-12 20:27
2005.07.31
Можно ли поднимать руку на противоположный пол?


3-1118911425
evg00
2005-06-16 12:43
2005.07.31
синтаксис запроса


3-1118905915
Леонид
2005-06-16 11:11
2005.07.31
Firebird. Нужен пример создания таблиц и тестовой программы