anoniem Geplaatst: 8 februari 2004 Delen Geplaatst: 8 februari 2004 Hallo, Ik ben al een tijdje bezig, maar heb no niet de juiste oplossing kunnen vinden. Wat ik eigelijk wil is dat ik de cijfertoetsen 0t/m9 van het toetsenbord en de ENTER toets kan koppelen aan de knoppen op een formulier. Dus als ik een getal wil invoeren dit gewoon op het numerieke deel van het toetsen bord kan doen zonder dat ik elke keer met de muis de knopjes moet aanklikken. Quote Link naar reactie
anoniem Geplaatst: 15 februari 2004 Auteur Delen Geplaatst: 15 februari 2004 Dat kan door gebruik te maken van het event OnKeyPress van het formulier waarop de knoppen staan. In de event procedure vang je dan de juiste tekens af: [code:1:eb7d9c88b4] procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char); begin if key = '1' then DoeIets; if key = '2' then DoeIetsAnders; enz end; [/code:1:eb7d9c88b4] Quote Link naar reactie
anoniem Geplaatst: 15 februari 2004 Auteur Delen Geplaatst: 15 februari 2004 [quote:3845324d96="Niek Breur"]Dat kan door gebruik te maken van het event OnKeyPress van het formulier waarop de knoppen staan. In de event procedure vang je dan de juiste tekens af:[/quote:3845324d96] En ook de [color=blue:3845324d96]KeyPreview[/color:3845324d96]-property van het form op True zetten. Quote Link naar reactie
anoniem Geplaatst: 16 februari 2004 Auteur Delen Geplaatst: 16 februari 2004 O.k,, maar is het dan ook mogelijk om functie-toetsen als de enter F1 tm F9, shift, etc. te gebruiken ? Kan dit volgens de zelfde methode of moet dit anders worden aangepakt ? Quote Link naar reactie
anoniem Geplaatst: 16 februari 2004 Auteur Delen Geplaatst: 16 februari 2004 [code:1:221fcf64d3] procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char); begin if key = #1 then DoeIets; if key = #2 then DoeIetsAnders; enz end; [/code:1:221fcf64d3] Je moet #1 en #2 gewoon vervangen door de goede ASCII code. Quote Link naar reactie
anoniem Geplaatst: 16 februari 2004 Auteur Delen Geplaatst: 16 februari 2004 [quote:b0114b07b4="turbo-pascal"][code:1:b0114b07b4] procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char); begin if key = #1 then DoeIets; if key = #2 then DoeIetsAnders; enz end; [/code:1:b0114b07b4] Je moet #1 en #2 gewoon vervangen door de goede ASCII code.[/quote:b0114b07b4] Maar dat is voor de standaard letters en cijfers a..z en 0..9 (en met ord/code denk ik), maar hoe moet dat met b.v. de enter ? Heeft die een eigen ascii code ? Quote Link naar reactie
anoniem Geplaatst: 16 februari 2004 Auteur Delen Geplaatst: 16 februari 2004 [quote:531895079c="bvvelde"][quote:531895079c="turbo-pascal"][code:1:531895079c] procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char); begin if key = #1 then DoeIets; if key = #2 then DoeIetsAnders; enz end; [/code:1:531895079c] Je moet #1 en #2 gewoon vervangen door de goede ASCII code.[/quote:531895079c] Maar dat is voor de standaard letters en cijfers a..z en 0..9 (en met ord/code denk ik), maar hoe moet dat met b.v. de enter ? Heeft die een eigen ascii code ?[/quote:531895079c] Ja [code:1:531895079c] procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char); begin case Ord(Key) of Windows.VK_RETURN: begin // Enter end; Windows.VK_TAB: begin // Tab end; end; end; [/code:1:531895079c] Quote Link naar reactie
anoniem Geplaatst: 17 februari 2004 Auteur Delen Geplaatst: 17 februari 2004 Bedankt ! Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen