Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Anweisungen werden nicht durchgeführt. Warum? (https://www.delphipraxis.net/60639-anweisungen-werden-nicht-durchgefuehrt-warum.html)

nowmaxx 10. Jan 2006 13:56


Anweisungen werden nicht durchgeführt. Warum?
 
Hi Jungs!
Mein erstes Posting hier, also erst mal ein Hi :lol:
Hab mich gerade hier angemeldet, da ich hoffe, dass ihr mir bei einem Problem helfen könnt. Es geth um das Arbeiten mit BitMaps. Hab da so ein Programm geschrieben. Wenn's fertig ist, soll's nach nem kleinen Spiel aussehen.
Doch nun zum Problem:
Hab in einer Button-Klick Methode einige Anweisungen stehen, die auch alle abliefen, also alles gut funktionierte, dann hab ich eine Quell-Text Zeile eingefügt, und es ging gar nichts mehr. Das Programm startet aber und es wird auch keine Exception ausgelöst. Diese Problem hatte ich schon manchmal, immer dann, wenn ich mit BitMaps arbeite. Ich schreib einfach mal den Quelltext, und dann, was passieren soll:
Delphi-Quellcode:
procedure TfMain.bKampfClick(Sender: TObject);
begin
//Formular fKampf zeigen
  fKampf.Show;

 
//Radiogroupzuweisungen
  //Spieler
  if rgPlayer.ItemIndex = 0 then
  begin
    art[1] := ice;
    aussehen[1] := 'Eiselement';
  end;
  //Soll noch erweitert werden.
  //Gegner
  if rgComputer.ItemIndex = 1 then
  begin
    art[2] := earth;
    aussehen[2] := 'Erdelement';
  end;
  //Soll noch erweitert werden.
 
//Spieler = [1]
  //Monsterklasse initialisieren
  Monster := cMonster.create(100,art[1]);
  //Monster zeichnen
  Monster.Show_Monster(10,130,format('Kreaturen/%s.Bmp',[aussehen[1]]),fKampf.Canvas);
  //Level berechnen
  level[1] := Monster.Level;
  //Life zeichnen
  Monster.Show_Life(50,405,Monster.Life_max,Monster.Life_max,fKampf.Canvas);
  {Wenn ich die Zeile drin hab, funktioniert's nicht....?????? 
  fKampf.lLife.Caption := format('%d/%d',[Monster.Life_max,Monster.Life_max]);} 

 
//Gegner = [2]
  //Monsterklasse initialisieren
  Monster := cMonster.create(100,art[2]);
  //Monster zeichnen
  Monster.Show_Monster(510,-15,format('Kreaturen/%s.Bmp',[aussehen[2]]),fKampf.Canvas);
  //Level berechnen
  level[2] := Monster.Level;
  //Life zeichnen
  Monster.Show_Life(580,250,Monster.Life_max,Monster.Life_max,fKampf.Canvas);
end;
Über diesen Button soll jetzt praktisch ein Formular angezeigt werden (fKampf). Aus einigen Radiogroups sollen einige Informationen hereusgelesen werden, mit denen dann auf fKampf handiert werden soll. Dann geth es los mit dem Monster, dass dem Spieler zur Verfügung steht. Sie soll gezeichnet werden (BitMap) und es sollen Eigenschaften zugeordnet werden(Life,Level...). Wenn ich jetzt diese eine Programmcodezeile (durch Kommentar gekennzeichnet) einfüge, werden dir vorigen Anweisungen nicht mehr durchgeführt. Woran könnte das liegen? :wall:

chaosben 10. Jan 2006 14:01

Re: Anweisungen werden nicht durchgeführt. Warum?
 
Hi nowmaxx! Herzlich willkommen in der DelphiPraxis! :hi:

Leider kann ich so auf die Schnelle keinen Fehler sehen. Wenn du partout nicht weiterkommst, könntest du uns ja auch mal das Programm uploaden.

nowmaxx 10. Jan 2006 14:17

Re: Anweisungen werden nicht durchgeführt. Warum?
 
Alles klar, wird gemacht.
Da ich nicht weiß, wie das hier funktioniert, kann man sich das Programm hier downloaden - natürlich kostenfrei! :-D

chaosben 10. Jan 2006 14:31

Re: Anweisungen werden nicht durchgeführt. Warum?
 
Alsoooo,
die vorigen Zeilen werden bei mir ausgeführt. Da stellt sich mir die Frage: Wie kommst du drauf, das diese Zeilen nicht ausgeführt werden?

nowmaxx 10. Jan 2006 15:06

Re: Anweisungen werden nicht durchgeführt. Warum?
 
Wenn das Programm so gestartet werden, wie man es downloaden kann, müsste es auch gehen. Aber nimm mal die Kommentarklammern bei der Zeile "{Wenn ich die Zeile drin hab, funktioniert's nicht....??????fKampf.lLife.Caption := format('%d/%d',[Monster.Life_max,Monster.Life_max]);}" raus. Da funzt's nicht mehr... :gruebel:

chaosben 10. Jan 2006 15:40

Re: Anweisungen werden nicht durchgeführt. Warum?
 
Mensch nowmaxx ... das hab ich doch gemacht. :) Und es geht. 100%ig. Garantiert. Definitiv.

Wie kommst du denn drauf, das es nicht geht?

Luckie 10. Jan 2006 15:42

Re: Anweisungen werden nicht durchgeführt. Warum?
 
Bist du den Code schon mal Schritt für Schritt mit F7 durchgegangen? Werden die Anweisungen überhaupt kompiliert (Ersichtlich an den blaune Punkten am linken Rand.) oder vom Kompiler wegoptimiert?

nowmaxx 10. Jan 2006 15:46

Re: Anweisungen werden nicht durchgeführt. Warum?
 
:gruebel:
Wenn ich das Programm starte, werden die BitMaps nicht gemalt, die blitzen nur ganz kurz auf... :wall:
Das versteh ich absolut nicht... :gruebel:
Zitat:

Bist du den Code schon mal Schritt für Schritt mit F7 durchgegangen? Werden die Anweisungen überhaupt kompiliert (Ersichtlich an den blaune Punkten am linken Rand.) oder vom Kompiler wegoptimiert?
Gerade gemacht...werden alle kompiliert... :wall:
Nico

nowmaxx 10. Jan 2006 20:39

Re: Anweisungen werden nicht durchgeführt. Warum?
 
Ist das jetzt ein Problem meines Rechners, meiner Delphi Version oder eins, was allein mich betrifft :lol: Aber wenn das Programm bei chaosben funktioniert...
Was könnte ich tun, wenn es an meinem Rechner, oder an der Version liegt. Ist das vielleicht ein technisches Problem, von Delphi selbst? Kennt sich damit jemand hier aus?

chaosben 11. Jan 2006 06:55

Re: Anweisungen werden nicht durchgeführt. Warum?
 
So, jetzt kommen wir der Sache näher.
Bei mir läuft das Programm zwar, aber Bilder hab ich nicht gesehen. Jedefalls nicht bewusst wahrgenommen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:25 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