AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen FreePascal Objekt in Lazarus per Tastendruck bewegen!
Thema durchsuchen
Ansicht
Themen-Optionen

Objekt in Lazarus per Tastendruck bewegen!

Ein Thema von foerster7892 · begonnen am 2. Mai 2010 · letzter Beitrag vom 2. Mai 2010
Antwort Antwort
Seite 1 von 2  1 2      
foerster7892

Registriert seit: 10. Okt 2007
Ort: Brieskow-Finkenheerd
181 Beiträge
 
#1

Objekt in Lazarus per Tastendruck bewegen!

  Alt 2. Mai 2010, 16:38
Kann einer hier sagen wie man in Lazarus per Tastendruck Objekte bewegen kann?
Code:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
  if (Shape1.Left<236) and (Shape1.Left>2) then
  begin
    case key of
      VK_RIGHT: Shape1.Left:=Shape1.Left+1;
      VK_LEFT : Shape1.Left:=Shape1.Left-1;
    end;
  end;
end;
ich bekomme hier immer eine Fehlermeldung bei VK_Right und VK_Left!
mfg
foerster7892
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#2

Re: Objekt in Lazarus per Tastendruck bewegen!

  Alt 2. Mai 2010, 17:12
Und welche? Oder ist das streng geheim?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
foerster7892

Registriert seit: 10. Okt 2007
Ort: Brieskow-Finkenheerd
181 Beiträge
 
#3

Re: Objekt in Lazarus per Tastendruck bewegen!

  Alt 2. Mai 2010, 17:27
Oh sorry hab ich vergessen:
Identifier not found "VK_RIGHT"
mfg
foerster7892
  Mit Zitat antworten Zitat
daywalker9

Registriert seit: 1. Jan 2010
Ort: Leer
594 Beiträge
 
Delphi XE3 Professional
 
#4

Re: Objekt in Lazarus per Tastendruck bewegen!

  Alt 2. Mai 2010, 17:53
Einmal gegoogelt und gleich der erste Treffer: Virtual Key Codes
Lars
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#5

Re: Objekt in Lazarus per Tastendruck bewegen!

  Alt 2. Mai 2010, 18:00
Oder in der "%lazarus%\fpc\2.2.4\source\rtl\win\wininc\defines .inc" nachschauen. Vermutlich muss man dazu nur die richtige Unit einbinden (Windows wahrscheinlich).
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
foerster7892

Registriert seit: 10. Okt 2007
Ort: Brieskow-Finkenheerd
181 Beiträge
 
#6

Re: Objekt in Lazarus per Tastendruck bewegen!

  Alt 2. Mai 2010, 18:24
Zitat von daywalker9:
Einmal gegoogelt und gleich der erste Treffer: Virtual Key Codes
? Ja ?

Also ich hab hier die Liste verwendet hat mir jemand in der Schule gegeben weil ich gefragt hab:
http://gamerpc.ga.funpic.de/sonstige...baren/Alle.txt

und da stehen genau die die ich verwendet hab drin! Sind die falsch?

Edit: Oh beim runterscrollen kommt ja die liste und siehe da die gleichen befehle die ich verwendet hab(siehe code oben)
Weiß denn keiner was ich falsch mache?(VK_RIGHT und VK_LEFT stehen doch da auch)
mfg
foerster7892
  Mit Zitat antworten Zitat
daywalker9

Registriert seit: 1. Jan 2010
Ort: Leer
594 Beiträge
 
Delphi XE3 Professional
 
#7

Re: Objekt in Lazarus per Tastendruck bewegen!

  Alt 2. Mai 2010, 18:30
Dort sind auch die Werte eingetragen, sodass du die im schlimmsten Fall selber definierst!
Lars
  Mit Zitat antworten Zitat
foerster7892

Registriert seit: 10. Okt 2007
Ort: Brieskow-Finkenheerd
181 Beiträge
 
#8

Re: Objekt in Lazarus per Tastendruck bewegen!

  Alt 2. Mai 2010, 18:32
Selber definieren? Wie? Muss ich erst lernen!
mfg
foerster7892
  Mit Zitat antworten Zitat
Benutzerbild von wicht
wicht

Registriert seit: 15. Jan 2006
Ort: Das schöne Enger nahe Bielefeld
809 Beiträge
 
Delphi XE Professional
 
#9

Re: Objekt in Lazarus per Tastendruck bewegen!

  Alt 2. Mai 2010, 18:33
Roter Kasten. Fail. Ich poste es trotzdem:

Die von dir verlinkte Textdatei hat mit der Fehlermeldung nichts zu tun. Lazarus kennt bei dir VK_RIGHT/VK_LEFT einfach nicht. Das sind schließlich nur Bezeichnungen für "Zahlen", die unter Delphi standardmäßig bekannt sind, weil die Unit, die die Definitionen enthält, wohl standardmäßig in der "uses"-Klausel steht. Damit es klappt musst du eben direkt die Werte der Konstanten angeben wie hier in meinem Beispiel, wobei die Werte aus der von daywalker9 verlinkten Liste kommen:

Delphi-Quellcode:
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
  if (Shape1.Left<236) and (Shape1.Left>2) then
  begin
    case key of
      $27: Shape1.Left:=Shape1.Left+1; // VK_RIGHT = $27
      $25 : Shape1.Left:=Shape1.Left-1; // VK_LEFT = $25
    end;
  end;
end;
Oder du bindest eben die Unit ein, die diese Konstanten definiert. Welche das ist, weiß ich so direkt auch nicht, ich vermute, wie bereits von DeddyH erwähnt, "Windows"...

HTH


Edit: Änder mal deine Signatur - die bringt dir sicher mehr Nach- als Vorteile *SCNR*

Edit2: Selber definieren geht so:

Delphi-Quellcode:
const
  VK_LEFT = $27;
  VK_RIGHT = $25;
Das kommt unter den "type" Abschnitt der Unit, dann müsste es klappen.
http://streamwriter.org

"I make hits. Not the public. I tell the DJ’s what to play. Understand?"
  Mit Zitat antworten Zitat
foerster7892

Registriert seit: 10. Okt 2007
Ort: Brieskow-Finkenheerd
181 Beiträge
 
#10

Re: Objekt in Lazarus per Tastendruck bewegen!

  Alt 2. Mai 2010, 18:38
Ok danke erstmal

PS.: das mit dem von DeddyH war ja ne schöne idee wenn man soviel erfahrung hat und genau weiß wonach man in der Liste suche muss! Aber das weiß ich leider nicht! Ich denke das findet man einfach mit der Zeit raus^^

PS.: die signatur is nicht ernst gemeint und ich wußte das nunmal einfach nciht da ich es noch nie gemacht hab^^
mfg
foerster7892
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:01 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz