Einzelnen Beitrag anzeigen

thomas2009
(Gast)

n/a Beiträge
 
#9

AW: Den Panel mit Pfeil-Tasten bewegen

  Alt 19. Apr 2011, 21:46
Ich habe auch was gefunden:
Ja, das funktioniert auch aber wie gesagt, nur wenn ich den Code in einem neuen leeren Projekt lege
Wenn Du aber ein paar Kontrolle (Z.B. TEdit, TRadioGroup) dazu auf Form legst, dann Du würdest wundern

Hier ist mein Demo.dpr mit OnkeyDown
Es funktioniert nicht richtig. Beim Bewegen von Panel, wechselt sich den Fokus zwischen dem Panel- und dem Edit- Controll !
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls;

type
  TForm1 = class(TForm)
    Panel1: TPanel;
    RadioGroup1: TRadioGroup;
    Edit1: TEdit;
    procedure FormKeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure Panel1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
Panel1.SetFocus;
if (Key = 39) then
    Panel1.Left:= Panel1.Left+10;
if (Key = 37) then
    Panel1.Left:= Panel1.Left-10;
if (Key = 38) then
    Panel1.Top:= Panel1.Top-10;
if (Key = 40) then
    Panel1.Top:= Panel1.Top+10;

end;

procedure TForm1.Panel1Click(Sender: TObject);
begin
Panel1.SetFocus;
end;

end.
die Tastaturabfrage scheint ein großes Hobby von dir zu sein: klick
Du verstehst meine Frage nicht wenn Du das Project2.exe testest, dann würdest Du verstehen

Was ich nicht verstehe, warum Edit1 Inhalt markiert wird und den Fokus bekommt ?
Angehängte Dateien
Dateityp: zip Panel_Move.zip (3,3 KB, 4x aufgerufen)
Dateityp: zip Project2.exe..zip (200,2 KB, 4x aufgerufen)

Geändert von thomas2009 (19. Apr 2011 um 23:24 Uhr)
  Mit Zitat antworten Zitat