- Milyen billentyűzetet vegyek?
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- OLED TV topic
- Apple MacBook
- Hogy is néznek ki a gépeink?
- Sugárkövetés nélküli sugárkövetés felé menetel az új PlayStation
- 3D nyomtatás
- Nvidia GPU-k jövője - amit tudni vélünk
- Autós kamerák
- Leállítja a legjobb CPU-hűtőinek szállítását az AMD
Új hozzászólás Aktív témák
-
vz12
tag
válasz
Tomi_78 #2128 üzenetére
"Focus is the ability to receive user input through the mouse or keyboard. Only the object that has the focus can receive a keyboard event. Also, only one component per form can be active, or have the focus, in a running application at any given time.
Some components, such as TImage, TPaintBox, TPanel and TLabel cannot receive focus. In general, components derived from TGraphicControl are unable to receive focus. Additionally, components that are invisible at run time (TTimer) cannot receive focus."
-----------------
Itt van még valami:
To trap keystrokes at the form level instead of passing them to the form's components, set the form's KeyPreview property to True (using the Object Inspector). The component still sees the event, but the form has an opportunity to handle it first - to allow or disallow some keys to be pressed, for example.Magát a formot közvetlenül NEM bill. inputra tervezték (az a rátehető objektumok egy részének a feladata), de eseménykezelője van, a form csak úgy figyel a háttérben.
Ha a formon beállítod a "KeyPreview=true"-t, akkor ELSŐDLEGESEN (központosítva) a form eseménykezelője dolgozza fel a bill. eseményeket, pl. a keydown-t is, MAJD AZUTÁN annak az objektumnak (pl. gombnak) a pl. keydown-ja is lefut, ahonnan a bill. lenyomás érkezett. A sorrend fontos, a form eseményben trükközni is lehet, mielőtt az objektum feldolgozná a bill. nyomást.
Ha a "KeyPreview=false", akkor a form bill. kezelő eseményei hatástalanok (ez történt nálad is, mert a "false" az alapértelmezett). Ilyenkor az általam írt "központosítás", mint módszer/trükk használható, tehát a formon lévő OBJEKTUM eseménykezelője kapja el a bill. nyomást (mert a formé nem fogja), de a form eseménykezelője hajtra végre. Ez jó akkor, ha pl. nem akarod, hogy minden objektum esetén végrehajtódjon a "központi" kód, csak azoknál amelyeknél beállítod, illetve nem akarsz többszörösen (redundánsan) kódolni.
A gyakorlatban: (a kilepgomb.OnKeyDown ki van kommentelve)
form1.KeyPreview:=true;
kilepgomb:=TButton.Create(form1);
kilepgomb.Parent:=form1;
kilepgomb.Top:=2;
kilepgomb.Left:=2;
kilepgomb.Caption:='Esc';
// kilepgomb.OnKeyDown:=@FormKeyDown;
kilepgomb.OnClick:=@kilepgombkatt;
Új hozzászólás Aktív témák
- Wuthering Waves
- Bemutatkozott a Poco X7 és X7 Pro
- WoW avagy World of Warcraft -=MMORPG=-
- Autós topik
- Elektromos autók - motorok
- Milyen billentyűzetet vegyek?
- Tőzsde és gazdaság
- Megjött a jubileumi Pixel széria
- Samsung Galaxy S21 Ultra - vákuumcsomagolás
- Az IFA-n már ott lehetnek a Samsung újdonságai
- További aktív témák...
- !AKCIÓ! Garanciás Klipsch R-120SW 30cm aktív mélysugárzó SubWoofer - 200W RMS / 400W Peak
- Eladó megbízható, szép Toshiba Satelite C850
- Csere - Beszámítás! Gamer PC : I5-14400F / 32GB DDR5 / RTX 4060 Ti / 1TB M.2 SSD
- Ryzen 5600, 32GB RAM, EVGA 3080 Gamer PC
- Asus RT-AC68U router eladó (3 darab - egyben vagy külön is)
- Samsung Galaxy A55 / 8 RAM 256GB / Gyárifüggetlen / 12hó Harancia
- Telefon felvásárlás!! iPhone 11/iPhone 11 Pro/iPhone 11 Pro Max
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 32/64GB RAM RTX 5060 Ti 8GB GAMER PC termékbeszámítással
- Eladó egy XMG P406 laptop
- Önerő nélkül is megvásárolható .1-10 hónap BANKMENTES részletfizetés.Arena Racer szövet gamer szék
Állásajánlatok
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest
Cég: FOTC
Város: Budapest