AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Verschieben von Buttons mit Befehl [Anfängerfrage]

Verschieben von Buttons mit Befehl [Anfängerfrage]

Ein Thema von Landfloh · begonnen am 25. Feb 2008 · letzter Beitrag vom 25. Feb 2008
Antwort Antwort
Seite 1 von 2  1 2   
Landfloh

Registriert seit: 17. Feb 2008
75 Beiträge
 
Delphi 7 Personal
 
#1

Verschieben von Buttons mit Befehl [Anfängerfrage]

  Alt 25. Feb 2008, 14:56
Hallo

Ich möchte mit einem Befehl einen Button verschieben.

Wenn ich Cursor oben drücke soll der button nach oben gehen wenn ich nach unten mit dem Cursor drücke soll der Button nach unten gehen wenn nach links dann nach links und wenn nach rechts dann nach rechts.

Was muss ich reinschreiben wenn ich in das Ereignis Form1 und da auf OnKeyPress gehe?

Gruf Landfloh
  Mit Zitat antworten Zitat
MrMyagi

Registriert seit: 2. Mai 2007
203 Beiträge
 
Delphi 7 Personal
 
#2

Re: Verschieben von Buttons mit Befehl [Anfängerfrage]

  Alt 25. Feb 2008, 15:03
Moin,
mit Button1.left bzw Button1.Top müsste es gehen
und wegen Tastenabfrage solltest Du mal nach
GetKeyState suchen.


mfG, Nico

Edit: Fehler verbessert
  Mit Zitat antworten Zitat
Landfloh

Registriert seit: 17. Feb 2008
75 Beiträge
 
Delphi 7 Personal
 
#3

Re: Verschieben von Buttons mit Befehl [Anfängerfrage]

  Alt 25. Feb 2008, 15:06
Und warum geht denn das nicht?

Delphi-Quellcode:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
  if Key = 'VK_DOWNthen Button1.left := 1;
end;
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.804 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Verschieben von Buttons mit Befehl [Anfängerfrage]

  Alt 25. Feb 2008, 15:09
Left und Top
[Edit: .Left setzt die Position:
if Key = 'VK_DOWNthen Button1.left := Button1.left - 1; ]
Markus Kinzler
  Mit Zitat antworten Zitat
MrMyagi

Registriert seit: 2. Mai 2007
203 Beiträge
 
Delphi 7 Personal
 
#5

Re: Verschieben von Buttons mit Befehl [Anfängerfrage]

  Alt 25. Feb 2008, 15:10
bau das ganze doch in einen Timer ein und dann mit

Delphi-Quellcode:

  if GetAsyncKeyState(VK_DOWN) then Button1.left := 1;
  Mit Zitat antworten Zitat
Benutzerbild von Xong
Xong

Registriert seit: 9. Jan 2008
186 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Verschieben von Buttons mit Befehl [Anfängerfrage]

  Alt 25. Feb 2008, 15:13
Zitat von Landfloh:
Und warum geht denn das nicht?
Delphi-Quellcode:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
  // Wenn "Nach-Unten"-Taste gedrückt wurde, setze Button.left auf 1. Öhm...
  //if Key = 'VK_DOWN' then Button1.left := 1;
  case Key of
    VK_DOWN: Button1.Top := Button1.Top + 1;
    VK_UP: Button1.Top := Button1.Top - 1;
    {...}
  end;
end;
  Mit Zitat antworten Zitat
Landfloh

Registriert seit: 17. Feb 2008
75 Beiträge
 
Delphi 7 Personal
 
#7

Re: Verschieben von Buttons mit Befehl [Anfängerfrage]

  Alt 25. Feb 2008, 15:15
Zitat von mkinzler:
Left und Top

if Key = 'VK_DOWNthen Button1.left := Button1.left - 1;
Das mit left steht da doch und es functioniert nicht.
Mit top geht es auch nicht.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.314 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Verschieben von Buttons mit Befehl [Anfängerfrage]

  Alt 25. Feb 2008, 15:16
Zitat von Xong:
Delphi-Quellcode:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
  // Wenn "Nach-Unten"-Taste gedrückt wurde, setze Button.left auf 1. Öhm...
  //if Key = 'VK_DOWN' then Button1.left := 1;
  case Key of
    VK_DOWN: Button1.Top := Button1.Top + 1;
    VK_UP: Button1.Top := Button1.Top - 1;
    {...}
  end;
end;
Müsste das so nicht in KeyDown stehen?
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
Landfloh

Registriert seit: 17. Feb 2008
75 Beiträge
 
Delphi 7 Personal
 
#9

Re: Verschieben von Buttons mit Befehl [Anfängerfrage]

  Alt 25. Feb 2008, 15:19
Zitat von Xong:
Zitat von Landfloh:
Und warum geht denn das nicht?
Delphi-Quellcode:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
  // Wenn "Nach-Unten"-Taste gedrückt wurde, setze Button.left auf 1. Öhm...
  //if Key = 'VK_DOWN' then Button1.left := 1;
  case Key of
    VK_DOWN: Button1.Top := Button1.Top + 1;
    VK_UP: Button1.Top := Button1.Top - 1;
    {...}
  end;
end;
Dann kommen die Fehlermeldungen:
[Fehler] Unit1.pas(29): Inkompatible Typen: 'Char' und 'Integer'
[Fehler] Unit1.pas(30): Inkompatible Typen: 'Char' und 'Integer'

  Mit Zitat antworten Zitat
Benutzerbild von STS301
STS301

Registriert seit: 6. Nov 2007
668 Beiträge
 
Delphi 7 Personal
 
#10

Re: Verschieben von Buttons mit Befehl [Anfängerfrage]

  Alt 25. Feb 2008, 15:26
dann versuche es unter KeyDown
Sebastian

ölpölp

Linux will rule the universe!!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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:37 Uhr.
Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf