, messagedlg functie is zeer nuttig, omdat het de behandeling van alle berichten en wikkel met de knop vinden.Maar de messagedlg niet - standaard gedrag verschillende nodig om me naar de bron van de dialoog - eenheid.,, het artikel verscheen in de www.undu. COM,,, in de eerste plaats moet ik een dialoog zal sluiten als een knop wordt ingedrukt en verslag uit te brengen over wat de sleutel is.Net als turbopascal bevel als keyPressed en belangrijkste: = kijk.,,, ik moet de controle van de knop in de dialoog met de standaard.Als je een messagedlg vroeg je dossier te verwijderen?Dan is de knop voor de standaard (dit is messagedlg normen) zal leiden tot de vraag hoe grote gebruikers.,,, de dialoog eenheid heeft een functie is die dialoog met messagedlg createmessagedialog is.Je krijgt de beste createmessagedialog rechtstreeks door gebruik te maken van messagedlg (verpakking en andere automatische ontwerp), plus je krijgt meer controle dialoog gedrag.,,, is dat ik de volgende twee oplossingen voor de behoeften.,,, het creëren van een nieuwe aanvraag.Om een knop in de vorm van een etiket en.Tform1.button1click zal button1 en toegewezen aan tform2 button2 onclick gebeurtenissen onclick gebeurtenissen. Button2click.,,, - zal leiden tot een button1 nu sluiten, als de gebruiker op een juridische band "of als de gebruiker op de ESC of klik icoon van de dialoog.Druk op de knop zal worden weergegeven in een,,,, - Button2 zal een boodschap van de normen van de dialoog is een beetje anders: geen knop is de standaard, geen knop.Dat is geen knop, ik gebruik als de knop controles (controles [N]) naam: "nee"."Geen" en "yestoall",'abort "of een andere knop titel van een standaard knopen,,,,,,, eenheid zijn; -, ramen, nieuws, SysUtils, klasse, grafische, de controles, de vorm, de dialoog, de stdctrls;,,,,, is een soort gebeurtenissen = (Platform),,,,,,,,,, button1:label1:TLabel; button2: knop; uitvoering van de roterende lettertype (afzender: TObject);,, programma helpboxkeypress (afzender: TObject; de VAR - trefwoord: Char);,, programma button2click (afzender: TObject);,, privé, (particuliere), open, openbare verklaringen {},,,,,, aan het einde van form1; var, de: een gebeurtenis;,,,,,, * * * * * * *} {% o. Voor de,,,,,,, legalkeys:VaR, string; uitvoering van de roterende woord (afzender: fob een incident.- project);,, var, touw,:;,,,,,,, legalkeys:='abc123 "; =" wil je nu doen? "# 13 + 13 + #,, "ga naar huis" + 13 +", voor de lunch, b = +, de" C "# slaap + 13 +,, 1.13 + +in Delphi, programma 's, 2.Een pizza bestellen"+ 13 +,, 3.Nothing';,,, met CreateMessageDialog (s, mtConfirmation, [...]), de eerste, te doen, onKeyPress:=HelpBoxKeyPress;,,,,,, als ShowModal=mrOK, dan Label1.Caption:='You pressed:'+LegalKeys[Tag], anders Label1.Caption:='You, pressed:'+'Cancel';,, ten slotte,,,, aan het einde van de vrije;; //try..Finally, eind; //with einde;,,,,, de procedure TForm1.HelpBoxKeyPress (Sender: TObject; var Key: Char);,,,., als - (UpCase (Key), LegalKeys)% GT% 0, beginnen, dan dat tform (afzender).Tag:=Pos (UpCase (Key), LegalKeys);,, tform (afzender).ModalResult:=mrOK;,,,,, als Key=#27 anders dan tform (afzender).ModalResult:=mrCancel;,,,,,,, de procedure TForm1.Button2Click (Sender: TObject);,,,,, n:Integer; var, beginnen, met CreateMes,Sagedialog ("wil je een verwijderd bestand?"En mtwarning, [mbyes, waren consistent]), begint te doen,,, n = 0:controlcount-1 doen als (controlegroep [] hè, en dan, als de knop controles (controles [N]). De naam = "nee" en controles (controles [0]). Taborder:=;,,,, showmodal; aan het einde van het,,,,,,,,,,,, is voorbij.
Meer controle messagedlg
Previous:Controleer de kaart