Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Form deaktiviert sich selber (https://www.delphipraxis.net/157149-form-deaktiviert-sich-selber.html)

DelphiMini 31. Dez 2010 15:00

Form deaktiviert sich selber
 
Hallo,

ich habe malwieder ein Problem:
Ich programmiere für Jugend forscht ein Projekt(Conway's Spiel des Lebens)
und jedesmal wnn ich auf die Ausgabe (TImage) klicke,
deaktiviert sich die Form und der Befehl wird nicht ausgeführt.
Warum? Und wie behebt man das?

Vielen Dank im Voraus!
:coder:

Uwe Raabe 31. Dez 2010 15:02

AW: Form deaktiviert sich selber
 
Zeigst du uns den Code oder sollen wir raten, was du programmiert hast?

Bummi 31. Dez 2010 15:07

AW: Form deaktiviert sich selber
 
Hast Du eine Action am Form hängen und diese wird disabled, oder das Form direkt wird disabled, oder hängst Du in einer Endlosschleife.....

DelphiMini 31. Dez 2010 15:25

AW: Form deaktiviert sich selber
 
Hier ist die Prozedur!

Delphi-Quellcode:
procedure THauptformular.FeldMouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var MX, MY,XX,YY : integer;
begin
 if EinfugenAn = false then
 begin
  MX := trunc(X / Kastchenbreite);
  MY := trunc(Y / Kastchenbreite);
  if Shift = [ssLeft] then
  begin
   neu[MX,MY] := not(neu[MX,MY]);
   PunktZeichnen;
   Rander;
  end;
 end;

 if EinfugenAn = true then
 begin
  MX := trunc(X / Kastchenbreite);
  MY := trunc(Y / Kastchenbreite);
  if Shift = [ssLeft] then
  begin
   for XX := 0 to FigurBreite2+1 do
   begin
    for YY := 0 to FigurHohe2+1 do
    begin
     neu[MX+XX,MY+YY] := FigurEinfugen[XX,YY];
    end;
   end;
   PunktZeichnen;
   Rander;
  end;
 end;

// EinfugenAn := false;
end;

Bummi 31. Dez 2010 15:37

AW: Form deaktiviert sich selber
 
:glaskugel: Render :glaskugel:

DelphiMini 31. Dez 2010 15:51

AW: Form deaktiviert sich selber
 
Rander!
(Eine andere Prozedure)

Bummi 31. Dez 2010 15:54

AW: Form deaktiviert sich selber
 
Sorry für den Tippfehler, aber Du hast an der Glaskugel gesehen, daß der Code nicht ausreicht den Fehler zu finden, ich vermute Du läufst irgendwo in eine Endlosschleife.....da hatte ich Rander in der Raum geworfen als möglichen Problemkandidat.

DelphiMini 31. Dez 2010 15:58

AW: Form deaktiviert sich selber
 
Danke,

ich schau mal nach!

rollstuhlfahrer 31. Dez 2010 16:38

AW: Form deaktiviert sich selber
 
Zitat:

Zitat von DelphiMini (Beitrag 1071478)
Delphi-Quellcode:
procedure THauptformular.FeldMouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var MX, MY,XX,YY : integer;
begin
 if EinfugenAn = false then // Fehler 1
  // [...]
 if EinfugenAn = true then // Fehler 2
  // [...]
end;

Man vergleicht nicht auf = TRUE oder = FALSE. Entweder
Delphi-Quellcode:
if Variable then
oder
Delphi-Quellcode:
if not Variable then
. Außerdem gibt es
Delphi-Quellcode:
if [...] then [...] else
.

Weiterhin habe ich das Gefühl, dass du mal in den Projektoptionen die Bereichsprüfung aktivieren solltest:
Delphi-Quellcode:
for XX := 0 to FigurBreite2+1 do
das "+" hier ist mir sehr suspekt, auch wenn ich den Hintergrund nicht kenne.

Bernhard

BUG 31. Dez 2010 16:44

AW: Form deaktiviert sich selber
 
OT:
Zitat:

Zitat von DelphiMini (Beitrag 1071495)
Rander!
(Eine andere Prozedure)

Das klingt irgendwie nicht intuitiv und irreführend wie ein Schreibfehler bei "render" ... vielleicht findest du noch einen besseren Namen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:34 Uhr.
Seite 1 von 2  1 2      

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