HyperLink
Bejelentkezés
E-mail: 
Jelszó: 





Skip Navigation Links
 

Speciális indítási mód saját alkalmazásnál


Példaprogram letöltése

3982 bájt

Legyen a feladat a következő: ha alkalmazásunk indításakor le van nyomva a Shift billentyű, akkor legyenek elérhető speciális funkciók a programunkban. Ha a Shift gomb nincs lenyomva e pillanatban, akkor értelemszerűen maradjanak rejtve ezek a képességek.
Mellékelt példában a Shift gomb figyelését fogjuk megvalósítani a program indulásakor.

Az indulás pillanatát, pedig a Project1.dpr állományba keressük és ne a Form1-nél. Itt, amikor az Application.Initialize sor lefut, azt követően kell ellenőriznünk, hogy Shift milyen állapotban van.
Ehhez segítséget a GetKeyboardState függvény szolgáltat, melynek paraméterként megadunk egy TKeyboardState típusú változót, mely nem más, mint egy bájtokat tartalmazó tömb. A függvény visszatérése után, ha annak a 16. eleme (VK_SHIFT) egy olyan bájt lesz, melynek 7 bitje 1, akkor a Shift gomb aktuálisan le van nyomva, különben nincs. Ettől függően tudjuk a szükséges elemek láthatóságát engedélyezni, vagy tiltani.
begin
  Application.Initialize;
  GetKeyboardState(kbs);
  b:=(kbs[VK_SHIFT] and 128)<>0;
  Application.CreateForm(TForm1, Form1);
  Form1.PageControl1.Pages[2].TabVisible:=b;
  Application.Run;
  Application.BringToFront;
end.
A programunk elindulása után nem árt egy BringToFront hívás, mert egy gomb lenyomása mellett indított alkalmazásnál az a program maradhat az aktív, melyből indítottuk a sajátunkat. Éppen ezért célszerű a mellékelt példát nem a Delphi alól kipróbálni, hanem az Intézőből. A projekt lefordítása után az Intézőben üssünk egy Enter-t miközben az EXE-n állunk, majd próbáljuk ki ezt úgy is, hogy az Enter lenyomása előtt lenyomjuk és nyomva tartjuk a Shift gombot.
A Shift lenyomásától függően a PageControl harmadik lapja, hol látható lesz, hol pedig nem.

Cikksorozat

#IDKategóriaCikk címeSorozat
1488DelphiMS SQL tárolt eljárások1. rész
1499DelphiMS SQL tárolt eljárások2. rész
1507DelphiMS SQL tárolt eljárások3. rész
1519DelphiMS SQL tárolt eljárások4. rész
1526DelphiMS SQL tárolt eljárások5. rész
1537DelphiMS SQL tárolt eljárások6. rész
1546DelphiMS SQL tárolt eljárások7. rész
1553DelphiMS SQL tárolt eljárások8. rész
1564DelphiMS SQL tárolt eljárások9. rész
1573DelphiMS SQL tárolt eljárások10. rész
1582DelphiMS SQL tárolt eljárások11. rész
1591DelphiMS SQL tárolt eljárások12. rész
1600DelphiMS SQL tárolt eljárások13. rész
1609DelphiMS SQL tárolt eljárások14. rész
1617DelphiMS SQL tárolt eljárások15. rész
1626DelphiMS SQL tárolt eljárások16. rész


Könyv
Ez a cikk megtalálható ebben a könyvben: Delphi Software Offline 2002 évkönyv 394. oldal

Felhasználási feltételek
A Software Online szoftverfejlesztői magazin mindegyik cikke, minden megjelent képe, és egyéb publikált anyaga szerzői jog védelme alatt áll! Bármilyen formában történő másodlagos terjesztésük, közzétételük vagy felhasználásuk kizárólag a kiadó előzetes írásbeli engedélyével történhet!

Copyright © 1999-2012 Animare Software Kft. Minden jog fenntartva!
| Készült: Animare Stúdió | Adatvédelem | Kapcsolat |