![]() |
|
#1
|
|||
|
|||
![]() Ребят помогите пожалуйста нужно сделать меню но так чтоб можно было двигаться по нему стрелками на клавиатуре.
К примеру есть 3 Label нужно чтоб при нажатии на стрелку вниз на клавиатуре поочерёдно подсвечивались Labelы а при нажатии на Enter происходило нажатие LabelClick |
#2
|
||||
|
||||
![]() Цитата:
VK_DOWN - Клавиша "Стрелка вниз" VK_UP - Клавиша "Стрелка вверх" VK_RETURN - Клавиша "Enter" |
#3
|
|||
|
|||
![]() Как то так:
Код:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Label1: TLabel; Label2: TLabel; Label3: TLabel; procedure FormKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState); procedure FormCreate(Sender: TObject); private FlabelSelect: TLabel; FlabelNo: integer; { Private declarations } public { Public declarations } property labelSelect:TLabel read FlabelSelect write FlabelSelect; property labelNo:integer read FlabelNo write FlabelNo; end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState); begin labelselect.Color:=clBtnFace; if key= VK_DOWN then begin if labelNo=3 then labelNo:=0; labelNo:=labelNo+1; end; if key= VK_UP then begin if labelNo=1 then labelNo:=4; labelNo:=labelNo-1; end; labelselect:=(FindComponent('Label'+inttostr(labelNo)) as TLabel); labelselect.Color:=clNavy; if key=VK_RETURN then begin showmessage('Enter Press '+labelSelect.Name); //labelSelect.OnClick(self); //Îáðàáîò÷èê êîòîðûé onClick íà label end; end; procedure TForm1.FormCreate(Sender: TObject); begin labelSelect:=label1; labelselect.Color:=clNavy; labelNo:=1; end; end. Новый вирус - "БОМЖ"! Он просто роется в Корзине...и спит под ярлычком "Сетевое окружение" |
Этот пользователь сказал Спасибо Black Raider за это полезное сообщение: | ||
Gudzik11 (14.11.2012)
|
#4
|
|||
|
|||
![]() Спасибо большое то что нужно .
|
#5
|
||||
|
||||
![]() И на скольки форумах ты запостил тему? Надеялся, что ответы разные будут?
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |