AGB  ·  Datenschutz  ·  Impressum  







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

Problem mit Events

Ein Thema von Angelnoir · begonnen am 13. Jan 2009 · letzter Beitrag vom 14. Jan 2009
Antwort Antwort
Seite 1 von 2  1 2      
Angelnoir

Registriert seit: 13. Jan 2009
6 Beiträge
 
Turbo Delphi für Win32
 
#1

Problem mit Events

  Alt 13. Jan 2009, 18:28
Hallo!

Also zuerst sei gesagt, dass ich seit 2 Jahren Turbo Pascal programmiert habe und mich jetzt auf meine Facharbeit vorbereite. Diese sollte in Delphi sein.
Teilweise hab ich mich minimal mit Java beschäftigt.

So, nun zu meiner Frage:
Es mag ziemlich banal erscheinen, aber auch nach 2-tägigem Forum durchsucen und ausprobieren habe ich keine Lösung gefunden.
Ich schreibe einen Text in ein Label und der Text soll geändert werden, wenn man auf einen Button klickt. (Hintergrund des Ganzen ist ein RPG, das ich in TP programmiert habe und jetzt versuche ähnlich in Delphi zu realisieren)

Delphi-Quellcode:
procedure TDialogFrame.Button1Click(Sender: TObject);
begin
   weiter:=true;
end;

procedure TDialogFrame.Dialog1;

begin
   weiter:=false;
   Mann1Lbl.Caption:='Hey! Du da, mach die Augen auf, es wird Zeit!';
   SpielerLbl.Caption:='...';
   If weiter then
      Mann1Lbl.Caption:='Verdammter, verschlafener Kerl, wach endlich auf!';
end;
Irgendwie ist mir klar, dass das nicht gehen kann. Aber wie fange ich denn dan so ein Event ab?
Wäre für Hilfe dankabr, kann auch irgendein Anfänger-Delphi-Tutorial sein

MfG
Angelnoir
  Mit Zitat antworten Zitat
Benutzerbild von MSSSSM
MSSSSM

Registriert seit: 18. Apr 2008
223 Beiträge
 
Delphi 7 Professional
 
#2

Re: Problem mit Events

  Alt 13. Jan 2009, 18:35
Ein Timer, den auf z.B. 10 Sekunden stellen, und im TimerEvent Timer.Enabled:=false; und weiter:=true

Marius
Marius
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

Re: Problem mit Events

  Alt 13. Jan 2009, 19:08
Ich hoffe ja mal nicht, dass du davon ausgehst, dass der Text "Verdammter, ..." irgendwann mal erscheint.
Zitat von Angelnoir:
Delphi-Quellcode:
procedure TDialogFrame.Button1Click(Sender: TObject);
begin
   weiter:=true;
end;

procedure TDialogFrame.Dialog1;

begin
   weiter:=false; // <-- wenn das gemacht wird ...
   Mann1Lbl.Caption:='Hey! Du da, mach die Augen auf, es wird Zeit!';
   SpielerLbl.Caption:='...';
   If weiter then // <-- ... dann wird das hier nie ausgeführt
      Mann1Lbl.Caption:='Verdammter, verschlafener Kerl, wach endlich auf!';
end;
Vielleicht suchst du ja so etwas ...

Delphi-Quellcode:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
    FWeiter: Boolean;
    procedure SetWeiter(const Value: Boolean);
  public
    { Public-Deklarationen }
    property Weiter : Boolean read FWeiter write SetWeiter;
  end;

var
  Form1: TForm1;

implementation

uses
  DateUtils;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  Weiter := True;
end;

procedure TForm1.SetWeiter(const Value: Boolean);
begin
  FWeiter := Value;
  if
    Weiter
  then
    Label1.Caption := 'Weiter ist True'
  else
    Label1.Caption := 'Weiter ist False';
end;

end.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Angelnoir

Registriert seit: 13. Jan 2009
6 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Problem mit Events

  Alt 13. Jan 2009, 19:42
Dass das nicht ausgeführt wird, war mir klar
Ich hatte gehofft irgendwas zu finden um die Prozedur solange zu unterbrechen bis halt der Button geklickt wird. So etwas wie ein booleascher Ausdruck den der Knopf erzeugt.

Und dass meine eine Prozedur nicht auf meine andere wartet, ist mir auch schon aufgefallen^^
Ist halt alles etwas sehr neu, wenn man aus der hübschen DOS-Welt kommt

P.S.: Ach ich werd mal mit eurenVorschlägen experimentieren, vielen Dank schonmal
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#5

Re: Problem mit Events

  Alt 13. Jan 2009, 19:52
Die Applikation wartet immer, bis ein Event ausgelöst wird (z.B. Button drücken).

Du musst der Applikation nicht beibringen zu warten, sondern dann zu reagieren, wenn sie soll
Das Warten kann die von Haus aus schon.
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Angelnoir

Registriert seit: 13. Jan 2009
6 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Problem mit Events

  Alt 13. Jan 2009, 23:02
Aber wie sage ich meiner Prozedur Dialog jetzt, dass sie auf nen Button Click warten soll?
Am besten begrabe ich meine Ideen und machs anders
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.993 Beiträge
 
Delphi 7 Professional
 
#7

Re: Problem mit Events

  Alt 13. Jan 2009, 23:16
warum nicht so ...
oder habe ich da was falsch verstanden?

Delphi-Quellcode:
procedure TDialogFrame.Button1Click(Sender: TObject);
begin
  Mann1Lbl.Caption:='Verdammter, verschlafener Kerl, wach endlich auf!';
end;

procedure TDialogFrame.Dialog1;
begin
  Mann1Lbl.Caption:='Hey! Du da, mach die Augen auf, es wird Zeit!';
  SpielerLbl.Caption:='...';
end;
Ralph
  Mit Zitat antworten Zitat
Angelnoir

Registriert seit: 13. Jan 2009
6 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: Problem mit Events

  Alt 13. Jan 2009, 23:27
Ja, das ist schon das, was ich will... nur sollten darauf eigentlich noch weite Dialogstücke folgen^^
Meine erste idee war es mitzuzählen, wie oft man schon auf den Button geklickt hat und je nachdme unterschiedliche Sachen anzeigen lassen
Haltet ihr das für zu kompliziert oder umständlich?
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.993 Beiträge
 
Delphi 7 Professional
 
#9

Re: Problem mit Events

  Alt 13. Jan 2009, 23:38
Hmm, dann alle Texte in OnClick(), einen Unit-lokalen Zähler definieren, diesen mit jedem Click erhöhen und je nach Zählerstand einen Text anzeigen (und nicht vergessen, den Zähler irgendwann wieder zurück setzen)
Ralph
  Mit Zitat antworten Zitat
Angelnoir

Registriert seit: 13. Jan 2009
6 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: Problem mit Events

  Alt 13. Jan 2009, 23:40
Ja genau sowas hatte ich mir gedacht
Dankeschön für die Hilfe
  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 21:06 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