application.messagebox

7 отговора 205 прегледа
#1

application.messagebox

moje li nqkoi da mi obqsni kakvo stava

eto kakvo pravq:

procedure TForm1.FormCreate(Sender: TObject);
begin
Application.MessageBox('1', 'a', MB_OK);
Application.MessageBox('2', 'b', MB_OK);
Application.MessageBox('3', 'c', MB_OK);
end;

o4akvam pri create na formata da mi gi puska edno sled drugo... oba4e nqma takova neshto pyrvia box go puska i sled [OK] programata otshumqva.... nali Application.MessageBox e ekvivalent na MessageBox kato za handle se vzima handle na application.... ina4e kogato go pravq sys MessageBox(Application.Handle, '1', 'a', MB_OK); si4ko e kakto o4akvam

kyde byrkam?

btw probvah i tova:

with Application do
begin
NormalizeTopMosts;
MessageBox('This should be on top.', 'Look', MB_OK);
RestoreTopMosts;
end;
with Application do
begin
NormalizeTopMosts;
MessageBox('This should be on top.', 'Look', MB_OK);
RestoreTopMosts;
end;
with Application do
begin
NormalizeTopMosts;
MessageBox('This should be on top.', 'Look', MB_OK);
RestoreTopMosts;
end;

nishto ne se promenq vinagi kato gi naslagam nqkolko Application.MessageBox i se bugva...

Отговор
в отговор на XE #2

Re: application.messagebox

Az go probvah s nov proekt i vidqh, che vurvi. Edinstveniq problem e, che kato dadesh OK, sledvashtite kutiiki se poqvqvat zad Delphi-to.

Kato poglednah Application.MessageBox, vidqh, che tam e golqma boza. Ako ti trqbva da se vijdat dobre, mi polzvai si napravo Windows-skoto. Shtoto Borland pravqt tam nqkakvi SetActiveWindow, EnableTaskWindows, RestoreFocusState, koito sigurno precakvat rabotata.

by Waz Gaa
[email protected]
Отговор
в отговор на XE #3

Re: application.messagebox

Probvai taka :
ShowMessage('a');
ShowMessage('b');
ShowMessage('c')
malko e kofti 4e ne moje6 da im dade6 zaglavie, oba4e raboti bez da se skriva...
vij kak e realizirana funkciata v Messages moje da pomogne....

Отговор
в отговор на Gele #4

Re: application.messagebox

ShowMessage малко не е реализирана в Messages ама нищо :) Всеки може да греши, хубаво е човек да си ги проверява нещата преди да постне

-------------
Special killer double trouble triple extra nicotine monster!

Редактирано от z_free на

Отговор
в отговор на XE #5

Re: application.messagebox

Постави ги в FormShow

Отговор
в отговор на z_free #6

Re: application.messagebox

Sto se zaiajda6 s 4oveka, pone e dal ideia kak da se re6i problema, a ti moje6e da vidi6 4e e definirana v Dialogs........

Отговор
в отговор на XE #7

Re: application.messagebox

pone sega se seshtam za 2 varianta :

1. Postavi gi v onShow() - togvava nqmash takiva grizi.

ako puk po nqkakva prichina ti trqbva da sa tochno v OnCreate(), togava
2. Podavaj kato flags na Application.messagebox MB_SYSTEMMODAL or MB_OK

togava obache se pojavqva obratnia efect - formata kato se pokaze e zad drugite prilojenia - kakto vsashnost na teb ti se pojavqvat boxovete , a ne che "programata otshumqva..."
kato slojish FormStyle da e fsStayOnTop shte ti se razreshi i toz problem , no puk trebva da si najasno sled tova kade mojesh da smenish tozi FormStyle ako iskash da ne ti e ontop.

ama maj naj-lesno i bezbolezneno e v OnShow() da gi slojish ;)

Отговор
в отговор на NoOne #8

Не се заяждам Re: application.messagebox

Не се заяждам с човека, просто констатирам.

-------------
Special killer double trouble triple extra nicotine monster!
Отговор