MessageBox

0

Dzień dobry, pisze program w którym zależy mi na małej objętości tzn 15 KB a nie 300 KB. No i obsługuje się go dopisując parametry do niego. Niestety jeśli ktoś
wpisze zły parametr muszę go jakoś poinformować o tym.

Pytanie:
Jak to zrobić korzystając z modułów Windows i może ewentualnie z tajemniczego jak dla mnie ShellAPI.

Zastrzeżenia:
Wiem że w module Windows jest MessageBox ale pierwszy parametr tej procedury to HWND a jedyne jakie znam to Application.Handle którego nie mogę wpisać bo znajduje się w module Form czy jakoś tak.
Apikacja Konsolowa odpada bo komunikat ma się pojawiać tylko w przypadku złego parametru. a normalnie ma się nic nie pojawiać.

Z góry dziękuję...
piechnat

0

Jak piszesz w Delphi to użyj funkcji ParamStr(Index: integer): string, nazwa pliku znajduje się pod index := 0 a dalsze parametry odzielone spacją w index := 1....
{browar} {glowa}

0

cepa napisał:
Jak piszesz w Delphi to użyj funkcji ParamStr(Index: integer): string, nazwa pliku znajduje się pod index := 0 a dalsze parametry odzielone spacją w index := 1....
&gt {browar} {glowa}

to wiem ale chodzi mi o wyświetlenie komunikatu takiego jak np. ShowMessage
Czy nie ma może jakichś standardowych windowsowych komunikatów
o błędach, takich w których można wpisać jakiś text.

piechnat

0

a nie mozesz do uses dopisac Dialogs i zastosowac ShowMessage,
albo jak w uses masz tylko Windows to stosujesz MessageBox

wiecej o MessageBox znajdziesz w Helpie :)---=-=[ Delphi 3, 6 ]=-=-
-=-=-==[ LKS ]==-=-=-
-=[ [email protected] ]=-

0

LKS napisał:
a nie mozesz do uses dopisac Dialogs i zastosowac ShowMessage,
&gtalbo jak w uses masz tylko Windows to stosujesz MessageBox
&gt
&gtwiecej o MessageBox znajdziesz w Helpie :)
&gt

A można jakoś użyć MessageBox tak żeby nie podawać Handle bo
Application.Handle jest w module Forms który powiększa program o 200 KB

0

ja zrobilem tak :
MessageBox(0, 'Komunikat', 'Tekst okna', MB_OKCANCEL);
i dziala :)---=-=[ Delphi 3, 6 ]=-=-
-=-=-==[ LKS ]==-=-=-
-=[ [email protected] ]=-

0

LKS napisał:
ja zrobilem tak :
&gtMessageBox(0, 'Komunikat', 'Tekst okna', MB_OKCANCEL);
&gti dziala :)

Jej... bardzo dziękuję, nie znam się na tym dobrze
więc chyba naprawdę nigdy bym nie wpadł na to żeby tam wpisać "0".

Jeszcze raz dziękuję i pozdrawiam...
piechnat {brawo}

0

Jak już pisałem to gdzieś na forum, ale powtórze...jest jeszcze jeden fajny MessageBox, lepszy od MessageDlg, ponieważ da się nazwać nagłówek i przyciski są tłumaczone, a nie ja w MessageDlg YES, No itp... oto i on sprawdźcie sami:
Application.MessageBox('tekst konsoli','tekst naglowka',mb_IconError+MB_YesNo+MB_DEFBUTTON1);

:) POZDRAWIAM

aha mb_IconError - to ikona
Mb_YesNo to przyciski Yes i No oczywiści u nas Tak I NIE!

0

heh OnoMaTO przeczytaj sobie moj post wyzej !!!!!!!!!!!!!!!!!
jak myslisz czy to nie jest to samo co u ciebie ????? ---=-=[ Delphi 3, 6 ]=-=-
-=-=-==[ LKS ]==-=-=-
-=[ [email protected] ]=-

0

LKS napisał:
heh OnoMaTO przeczytaj sobie moj post wyzej !!!!!!!!!!!!!!!!!
&gtjak myslisz czy to nie jest to samo co u ciebie ?????

heh LKS przeczytaj sobie mÓj post wyzej !!!!
ja mysle ze to nie jest jednak to samo, poniewaz w Twoim Boxie nie ma ikonek i mozna zamknac dialog poprzez nacisniecie x w prawym gornym rogu, a w moim sa ikonki i wylaczony jest x w tymze rogu i pokazalem jak naprowadzac focus na poszczegolne buttony...wiec mysle ze jakas roznica jest nieuwazasz? :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0