Einzelnen Beitrag anzeigen

blackdrake

Registriert seit: 21. Aug 2003
Ort: Bammental
618 Beiträge
 
Delphi 10.3 Rio
 
#1

DelphiX: TDxTimer dynamisch in Code einbinden -> Fehler!

  Alt 9. Sep 2006, 00:00
Hallo.

Ich habe ein Problem mit TDxTimer von DelphiX. Ich bin dabei, alle visuellen Komponenten dynamisch in den Code zu verlagern, um meine Projekte mit TurboExplorer lauffähig zu machen. Bei TDxTimer habe ich jedoch Probleme. Irgendwie funktioniert mein Spiel nicht mehr, wenn ich den DX-Timer dynamisch generiere.

Das funktioniert (Timer ist auf Form noch vorhanden):

Code:
type ...TDxForm...
  published
    dxtimer: TDxTimer;
  ...

procedure TMainForm.FormCreate(...);
begin
  // dxtimer := tdxtimer.create(self);
  dxtimer.interval ...
  dxtimer.enabled ...
  dxtimer.ontimer ...
end;
Das funktioniert plötzlich nicht mehr! (Timer ist noch auf Form, wird aber nochmal created)

Code:
type ...TDxForm...
  published
    dxtimer: TDxTimer;
  ...

procedure TMainForm.FormCreate(...);
begin
  dxtimer := tdxtimer.create(self);
  dxtimer.interval ...
  dxtimer.enabled ...
  dxtimer.ontimer ...
end;
Das funktioniert auch nicht. (Timer ist nun komplett weg vom Form)

Code:
type ...TDxForm...
  public
    dxtimer: TDxTimer;
  ...

procedure TMainForm.FormCreate(...);
begin
  dxtimer := tdxtimer.create(self);
  dxtimer.interval ...
  dxtimer.enabled ...
  dxtimer.ontimer ...
end;
Der Fehler tritt bei 2 Projekten auf und ich finde einfach den Fehler nicht. Ich habe schon create(self), create(nil) und create(application) ausprobiert und in Google finde ich nicht, dass es damit Probleme gibt.

Das Problem ist, dass DxDraw beim Spielstart dunkel bleibt und erst viel später ein Bild zeigt (sofern überhaupt). Dann funktioniert aber auch nicht DxInput usw -> eindeutiges Problem im Timer, das Spiel ist eingefroren.

Weiß jemand, was falsch sein kann?

Gruß
blackdrake
Daniel Marschall
  Mit Zitat antworten Zitat