/ Forside / Teknologi / Udvikling / Delphi/Pascal / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Delphi/Pascal
#NavnPoint
oldwiking 603
jrossing 525
rpje 520
EXTERMINA.. 500
gandalf 460
gubi 270
DJ_Puden 250
PARKENSS 230
technet 210
10  jdjespers.. 200
pile taster
Fra : Wiljan


Dato : 22-10-01 21:36

Hej

Jeg har lavet et program i delphi hvor jeg på et tidspunkt skal bruge
pile tasterne til at styre noget grafik jeg bruger keydown som her

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);

begin
label2.Caption:=inttostr(key);
if Key = VK_left then label1.Caption:='left';
if key = VK_Right then label1.Caption:='right';
if key = VK_up then label1.Caption:='up';
if key = VK_down then label1.Caption:='down';
end;

jeg har keypreview true på min form og det virker fint
mit problem er at fokus hopper rundt på diverse knapper som tab order
hvordan undgår jeg dette problem??

--
Venlig hilsen

Wiljan



 
 
Thomas Riedel (23-10-2001)
Kommentar
Fra : Thomas Riedel


Dato : 23-10-01 09:50

du mangler en

key := 0

som markerer, at tastetrykket behandlet

tjek:


procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);

begin
label2.Caption:=inttostr(key);
if key in [vk_left, vk_right, vk_up, vk_down] then
begin
case key of
VK_left : label1.Caption:='left';
VK_Right : label1.Caption:='right';
VK_up : label1.Caption:='up';
VK_down : label1.Caption:='down';
end;
key := 0;
end;
end;


--
Thomas Riedel, LogiHouse
"Wiljan" <Wiljan@post8.tele.dk> wrote in message
news:3BD4833C.86E444AF@post8.tele.dk...
> Hej
>
> Jeg har lavet et program i delphi hvor jeg på et tidspunkt skal bruge
> pile tasterne til at styre noget grafik jeg bruger keydown som her
>
> procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
> Shift: TShiftState);
>
> begin
> label2.Caption:=inttostr(key);
> if Key = VK_left then label1.Caption:='left';
> if key = VK_Right then label1.Caption:='right';
> if key = VK_up then label1.Caption:='up';
> if key = VK_down then label1.Caption:='down';
> end;
>
> jeg har keypreview true på min form og det virker fint
> mit problem er at fokus hopper rundt på diverse knapper som tab order
> hvordan undgår jeg dette problem??
>
> --
> Venlig hilsen
>
> Wiljan
>
>



Wiljan (23-10-2001)
Kommentar
Fra : Wiljan


Dato : 23-10-01 17:21

Hej Thomas

key := 0 virker fint hvis fokus er på en editbox men hvis fokus er på en
knap og jeg trykker på piletasterne så hopper fukus rund på de andre
knapper...der må være en måde at stoppe fokus hop på (både for tab og for
piletaster)

Wiljan


Thomas Riedel wrote:

> du mangler en
>
> key := 0
>
> som markerer, at tastetrykket behandlet
>
> tjek:
>
> procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
> Shift: TShiftState);
>
> begin
> label2.Caption:=inttostr(key);
> if key in [vk_left, vk_right, vk_up, vk_down] then
> begin
> case key of
> VK_left : label1.Caption:='left';
> VK_Right : label1.Caption:='right';
> VK_up : label1.Caption:='up';
> VK_down : label1.Caption:='down';
> end;
> key := 0;
> end;
> end;
>
> --
> Thomas Riedel, LogiHouse
> "Wiljan" <Wiljan@post8.tele.dk> wrote in message
> news:3BD4833C.86E444AF@post8.tele.dk...
> > Hej
> >
> > Jeg har lavet et program i delphi hvor jeg på et tidspunkt skal bruge
> > pile tasterne til at styre noget grafik jeg bruger keydown som her
> >
> > procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
> > Shift: TShiftState);
> >
> > begin
> > label2.Caption:=inttostr(key);
> > if Key = VK_left then label1.Caption:='left';
> > if key = VK_Right then label1.Caption:='right';
> > if key = VK_up then label1.Caption:='up';
> > if key = VK_down then label1.Caption:='down';
> > end;
> >
> > jeg har keypreview true på min form og det virker fint
> > mit problem er at fokus hopper rundt på diverse knapper som tab order
> > hvordan undgår jeg dette problem??
> >
> > --
> > Venlig hilsen
> >
> > Wiljan
> >
> >

--
Venlig hilsen

Jan Jacobsen

Tecodan ApS
Dronninggaards Alle 22
2840 Holte
Denmark

Phone: +45 45 42 43 38
Fax: +45 45 42 43 68
GSM: +45 40 45 43 38 obs !! NEW


WWW: www.tecodan.com
Email mail@tecodan.com



Niels (G4S) (23-10-2001)
Kommentar
Fra : Niels (G4S)


Dato : 23-10-01 21:03

On Tue, 23 Oct 2001 18:20:46 +0200, Wiljan <Wiljan@post8.tele.dk>
wrote:

>key := 0 virker fint hvis fokus er på en editbox men hvis fokus er på en
>knap og jeg trykker på piletasterne så hopper fukus rund på de andre
>knapper...der må være en måde at stoppe fokus hop på (både for tab og for
>piletaster)

Så vidt jeg ved kan man ikke. Knapperne er 100% styret af Windows, så
hvis du vil styre det selv skal du skrive hele koden for knapper om.
Vil jeg tro!
Jeg har selv haft det samme problem, og jeg klarede det ved at bruge
SpeedButtons i stedet, men de kan ikke have input-focus ligesom en
rigtig knap kan.

--
/` g4s : gee-four-s aka. Niels Martin Hansen
\/ _ mail : g4s [at] mail [dot] dee-kay
/__| icq : 50 18 73 23
_|

Wiljan (23-10-2001)
Kommentar
Fra : Wiljan


Dato : 23-10-01 21:38

Hej

hm... jeg har søgt lidt på nettet og fundet følgende...
http://www.elists.org/pipermail/delphi-talk/2000-July/004983.html

er der en der kan vise hvordan dette skal skrives så det virker sammen med
begin
key:= dlgc_wantarrows;
label2.Caption:=inttostr(key);
if key in [vk_left, vk_right, vk_up, vk_down] then
begin
case key of
VK_left : label1.Caption:='left';
VK_Right : label1.Caption:='right';
VK_up : label1.Caption:='up';
VK_down : label1.Caption:='down';
end;
key := 0;
end;

end;


Hilsen Wiljan


"Niels (G4S)" wrote:

> On Tue, 23 Oct 2001 18:20:46 +0200, Wiljan <Wiljan@post8.tele.dk>
> wrote:
>
> >key := 0 virker fint hvis fokus er på en editbox men hvis fokus er på en
> >knap og jeg trykker på piletasterne så hopper fukus rund på de andre
> >knapper...der må være en måde at stoppe fokus hop på (både for tab og for
> >piletaster)
>
> Så vidt jeg ved kan man ikke. Knapperne er 100% styret af Windows, så
> hvis du vil styre det selv skal du skrive hele koden for knapper om.
> Vil jeg tro!
> Jeg har selv haft det samme problem, og jeg klarede det ved at bruge
> SpeedButtons i stedet, men de kan ikke have input-focus ligesom en
> rigtig knap kan.
>
> --
> /` g4s : gee-four-s aka. Niels Martin Hansen
> \/ _ mail : g4s [at] mail [dot] dee-kay
> /__| icq : 50 18 73 23
> _|





Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408925
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste