Stránka 1 z 1
Problém v Delphi
Napsal: úte 17. úno 2009, 21:45
od Pavelm
Mám problém v Delphi. Jedná se o funkci MessageDlg.
Jelikož se chci naučit programovat v Delphi, tak podle jednoho návodu jsem ji chtěl zkusit vytvořit zkušební program, který měl při kliknutí na tl "Konec" zobrazit okno, kde dostanu na výběr možnosti Ano a Ne. Po stisku tl. Ano by se měl program ukončit. Ale pořád mi to píše nějaké chyby. Zkoušel jsem to různými způsoby, strávil jsem u toho problémů asi 2 hodiny a nevyřešil jsem to.. Tak mi prosím poraďte, kde jsem udělal chybu, díky...
Vím, že je to asi primitivní, ale neporadil jsem si s tím

Re: Problém v Delphi
Napsal: stř 18. úno 2009, 00:32
od bubanek
zkus
nahradit za
(nebo 0, teď nevím, jak to počítá)
Re: Problém v Delphi
Napsal: stř 18. úno 2009, 20:00
od Pavel.P.
Já osobně sem si programoval tázací okna sám, už jen kvůli tomu, že sem je mohl libovolně upravovat. Tím myslí to, že si vytvoř nový Formulář (čistě jen File -> New -> Form [nejsem si jistý cestou], nebo jen nový Dialog, který tam taky najdeš. Poté na formulář, který se ti vytvořil dáš dva buttony = ok, no a ještě label, kde budeš mít napsanou tu otázku, která se ti ptá na ukončení.
Jak to budeš mít, tak na ok poklikáš a napíšeš form1.close a pak jdeš na no a napíšeš jen close nebo tlačítku přiřadíš metodu Cancel.
Poté skoč na hlavní form a v objectu inspector najdi OnClose a dej tam volat tvůj zavírací dialog -> MůjZavíracíDialog.Show nebo MůjZavíracíDialog.ShowModal;
Chápeš co sem ti chtěl napsat?

Re: Problém v Delphi
Napsal: stř 18. úno 2009, 22:55
od Pavelm
Pavel.P. píše:Já osobně sem si programoval tázací okna sám, už jen kvůli tomu, že sem je mohl libovolně upravovat. Tím myslí to, že si vytvoř nový Formulář (čistě jen File -> New -> Form [nejsem si jistý cestou], nebo jen nový Dialog, který tam taky najdeš. Poté na formulář, který se ti vytvořil dáš dva buttony = ok, no a ještě label, kde budeš mít napsanou tu otázku, která se ti ptá na ukončení.
Jak to budeš mít, tak na ok poklikáš a napíšeš form1.close a pak jdeš na no a napíšeš jen close nebo tlačítku přiřadíš metodu Cancel.
Poté skoč na hlavní form a v objectu inspector najdi OnClose a dej tam volat tvůj zavírací dialog -> MůjZavíracíDialog.Show nebo MůjZavíracíDialog.ShowModal;
Chápeš co sem ti chtěl napsat?

Chápu, dokonce jsem to zkoušel a vono to funguje

díky za tip, alespoň znám další užitečný fígl..
bubanek píše:zkus
nahradit za
(nebo 0, teď nevím, jak to počítá)
zkoušel jsem a napsalo to tu samou chybu..
Je možné, že v různých verzích(starších a novějších) delphi se určité kódy píšou trochu jinak, tak možná proto mi to nebere... Ale snad časem zjistím kde byla chyba.

Re: Problém v Delphi
Napsal: čtv 19. úno 2009, 08:30
od Pavel.P.
Večer jak budu mít čas, tak se ti na to mrknu, ale myslím, že funkci jsem nepsal do těla programu pod proceduru. Napiš jí do sekce PUBLIC. Tu funkci zcela vynech

A zkopíruj sem prosím celý výpis chyb a tvůj kod pro to okno dialogvové, jak jej voláš. Díky.
Re: Problém v Delphi
Napsal: pon 23. úno 2009, 18:10
od Pavelm
Pavel.P. píše:Večer jak budu mít čas, tak se ti na to mrknu, ale myslím, že funkci jsem nepsal do těla programu pod proceduru. Napiš jí do sekce PUBLIC. Tu funkci zcela vynech

A zkopíruj sem prosím celý výpis chyb a tvůj kod pro to okno dialogvové, jak jej voláš. Díky.
sry, že jsem neodepsal dříve, protože jsem teď poslední dobou docela zaneprázdněn..
Problém jsem už velice jednoduše vyřešil..
stačilo smazat toto:
Kód: Vybrat vše
function MessageDlg(const Msg: string;
mtInformation: TMsgDlgType;
mbYes,mbNo: TMsgDlgButtons;
HelpCtx: Longint): Word;
A pak už to fungovalo.

Re: Problém v Delphi
Napsal: pon 23. úno 2009, 19:22
od Pavel.P.
Já sem si říkal, že sem to nepsal jako funkci
