AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Tastensimulation Frage

Ein Thema von xxgoodboyxx · begonnen am 5. Jun 2009 · letzter Beitrag vom 7. Jun 2009
Thema geschlossen
Seite 1 von 3  1 23      
xxgoodboyxx

Registriert seit: 5. Jun 2009
13 Beiträge
 
#1

Tastensimulation Frage

  Alt 5. Jun 2009, 21:48
Hallo ich wollte mal einen Bot programmieren.
Da ich mit den Tastensimulationen erst angefangen habe würde ich gerne wissen was an meinem bisherigen Programm falsch ist...
Ich bekomme keine Fehlermeldung ; er zeigt mir lediglich die Showmessage nicht an

Code:
procedure TForm1.FormCreate(Sender: TObject);
begin
keypreview:=true;
pressed := 0
end;

TKeyEvent = procedure TForm1.FormOnKeyPress(Sender: TObject; var Key: Word;
  Shift: TShiftState)of Object;
  property OnKeyDown: TKeyEvent;
begin
  if key = VK_F1 then Pressed:=1;

If Pressed=1 then Showmessage('Gut');

end;
 
Benutzerbild von mleyen
mleyen

Registriert seit: 10. Aug 2007
609 Beiträge
 
FreePascal / Lazarus
 
#2

Re: Tastensimulation Frage

  Alt 5. Jun 2009, 21:58
Zitat von xxgoodboyxx:
Da ich mit den Tastensimulationen erst angefangen habe würde ich gerne wissen was an meinem bisherigen Programm falsch ist...
Wie der Compiler sagt, es ist nichts falsch, es funktioniert alles wie es soll.

Ansonsten, falls du wirklich programmieren lernen willst: da
Der Rest ist Google -/ Forensuche.

Bots sind insgesamt ungern gesehen und oft auch strikt verboten, daher solltest du nicht vorraussetzten, das irgendwer dir was vorkaut.
 
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

Re: Tastensimulation Frage

  Alt 5. Jun 2009, 23:07
Wird denn Pressed auch auf 1 gesetzte? Und formatier mal deinen Quellcode gescheit. Es erhöht auch die Lesbarkeit, wenn man sich auf eine Schreibweise der Schlüsselwörter festlegt.
Michael
Ein Teil meines Codes würde euch verunsichern.
 
xxgoodboyxx

Registriert seit: 5. Jun 2009
13 Beiträge
 
#4

Re: Tastensimulation Frage

  Alt 6. Jun 2009, 17:24
danke erstmal für die antworten...
Ja sry , aber es ist eine gute Aufgabe meine Delphi Kenntnisse in Tastensimulationen zu verbessern.
Aber wieso bekomm ich keine Message ausgespuckt?
Keine Ahnung ob Pressed den Wert 1 erhält ...

Hier nochmal der formatierte Quelltext:

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
keypreview:=true;
pressed := 0
end;

TKeyEvent = procedure TForm1.FormOnKeyPress(Sender: TObject; var Key: Word;
  Shift: TShiftState)of Object;
  property OnKeyDown: TKeyEvent;
begin
  if key = VK_F1 then Pressed:=1;

If Pressed=1 then Showmessage('Gut');

end;
 
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#5

Re: Tastensimulation Frage

  Alt 6. Jun 2009, 18:02
Was ist denn das??

Delphi-Quellcode:
TKeyEvent = procedure TForm1.FormOnKeyPress(Sender: TObject; var Key: Word;
  Shift: TShiftState)of Object;
  property OnKeyDown: TKeyEvent;
Thomas
 
xxgoodboyxx

Registriert seit: 5. Jun 2009
13 Beiträge
 
#6

Re: Tastensimulation Frage

  Alt 6. Jun 2009, 18:21
hmm ich hab mir die delphi hilfe angeschaut und da stand des so

wenn ich es so mache funktioniert es auch nicht

Delphi-Quellcode:
procedure TForm1.FormOnKeyPress(Sender: TObject; var Key: Word;
  Shift: TShiftState)
 
quendolineDD

Registriert seit: 19. Apr 2007
Ort: Dresden
781 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Tastensimulation Frage

  Alt 6. Jun 2009, 18:47
Was benutzt du für eine Delphiversion? Bei mir gibt es nur OnKeyDown, OnKeyPress und OnKeyUp.
Das sieht dann ungefähr so aus:
Delphi-Quellcode:
procedure TForm2.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key = VK_F1 then
    ShowMessage('F1 gedrückt');
end;
Funktioniert wunderbar.
Das hat jedoch bisher wenig mit Tastensimulation zu tun, da du ja bisher nur auf einen Tastendruck reagierst. Um deinem Thementitel gerecht zu werden gebe ich dir mal das Stichwort MSDN-Library durchsuchenSendMessage und MSDN-Library durchsuchenPostMessage.
Könnte es sein, das du die Funktion nicht über den OI sondern manuell eingetragen hast?
Lars S.
Wer nicht mit der Zeit geht, geht mit der Zeit.
 
xxgoodboyxx

Registriert seit: 5. Jun 2009
13 Beiträge
 
#8

Re: Tastensimulation Frage

  Alt 6. Jun 2009, 18:56
hi hmm ich verstehe deine Frage nicht...
benutze delphi 7 und dein code funktioniert bei mir ebenfalls nicht

ich habe grade gesehen , dass ich wieso auch immer weiter oben ein " end." stehen hatte. Dadurch wurde der Text danach einfach ignoriert. Nachdem ich dieses jedoch entfernte wurde ich mit fehlermeldungen zugespamt...
Zb. Undefinierter Bezeichner FormCreat oder Keypreview...

Hier mal mein kompletter code :

Delphi-Quellcode:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Panel1: TPanel;
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;


var
  Form1: TForm1;
  Pressed:integer;
implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
keypreview:=true;
pressed := 0
end;

procedure TForm2.FormKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key = VK_F1 then
    ShowMessage('F1 gedrückt');
end;



end.
 
quendolineDD

Registriert seit: 19. Apr 2007
Ort: Dresden
781 Beiträge
 
Turbo Delphi für Win32
 
#9

Re: Tastensimulation Frage

  Alt 6. Jun 2009, 18:59
Du scheinst die Zeilen einfach eingefügt zu haben. Gehe mal in deinen Objektinspektor (Standard-IDE links unten) und wähle deine Form aus. Nun gehst du auf den Reiter Ereignisse und suchst dir das OnKey-Ereignis aus, welches du benutzten willst und klickst in das leere Feld rechts daneben doppelt. Nun müsstest du dich im Quelltexteditor befinden mit dem Cursor in einer neuen Procedur.
Dürfte dann ca. so aussehen:
Delphi-Quellcode:
unit Unit2;

interface

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

type
  TForm2 = class(TForm)
    procedure FormKeyPress(Sender: TObject; var Key: Char);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form2: TForm2;

implementation

{$R *.dfm}

procedure TForm2.FormKeyPress(Sender: TObject; var Key: Char);
begin

end;

end.
Edit: Da dir anscheinend das Wissen um den Umgang mit der IDE und der Einbindung von Funktionen und Prozeduren fehlt, lege ich dir das Grundlagentutorial ans Herz.
Lars S.
Wer nicht mit der Zeit geht, geht mit der Zeit.
 
xxgoodboyxx

Registriert seit: 5. Jun 2009
13 Beiträge
 
#10

Re: Tastensimulation Frage

  Alt 6. Jun 2009, 19:22
brauche nicht dieses tutorial , da ich in der schule mit informatik unterrichtet werde
 
Thema geschlossen
Seite 1 von 3  1 23      


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 07:41 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