AGB  ·  Datenschutz  ·  Impressum  







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

Lazarus Einarmiger Bandit

Ein Thema von Aaron2608 · begonnen am 17. Dez 2015 · letzter Beitrag vom 17. Dez 2015
Antwort Antwort
Aaron2608

Registriert seit: 17. Dez 2015
1 Beiträge
 
#1

Lazarus Einarmiger Bandit

  Alt 17. Dez 2015, 15:13
Hallo,
Ich will einen Einarmigen Bandit programmieren mit 3 Bildern.
Die Bilder heißen bei mir ABild & BBild.
Es muss kein Betrag sonder nur der Text Verloren oder Gewonnen im Panel2 ausgegeben werden
Ich habe auf den Button geschrieben

procedure TForm1.Button1Click(Sender: TObject);
begin

Image1.picture.loadfromfile ('ABild');
Image2.picture.loadfromfile ('ABild');
Image3.picture.loadfromfile ('ABild');
Image1.picture.loadfromfile ('BBild');
Image2.picture.loadfromfile ('BBild');
Image3.picture.loadfromfile ('BBild');
if (Image1 = Image2) AND (Image3 = Image1) then
panel2.caption:=('gut') ;
end;


Ich habe mehere Probleme , wie bekomme ich es hin dass die Bilder gemischt werden also neu gewürfelt ?
Wenn ich das Programm starte und auf den Button drücke kommt unable to load file 'ABild'

Ich bin noch sehr neu & habe bis jetzt alle Aufgaben geschafft aber ich komme nicht weiter...
  Mit Zitat antworten Zitat
Benutzerbild von baumina
baumina

Registriert seit: 5. Mai 2008
Ort: Oberschwaben
1.275 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Lazarus Einarmiger Bandit

  Alt 17. Dez 2015, 15:27
Bei LoadFromFile musst du den kompletten Dateinamen inkl. Pfad angeben.

Um etwas zufällig machen zu können, brauchst du den Befehl Random.
Hinter dir gehts abwärts und vor dir steil bergauf ! (Wolfgang Ambros)
  Mit Zitat antworten Zitat
Benutzerbild von alleinherrscher
alleinherrscher

Registriert seit: 8. Jul 2004
Ort: Aachen
797 Beiträge
 
Delphi XE2 Professional
 
#3

AW: Lazarus Einarmiger Bandit

  Alt 17. Dez 2015, 15:30
Hey willkommen im Forum!

Deine Fehlermeldung beschreibt doch schon dein erstes Problem: die procedure loadfromfile erwartet as Argument einen Dateinamen. Dein Quelltext wäre richtig, wenn dein Bild tatsächlich "ABild" heißt (ohne Dateiendung) und sich im Ordner befindet, wo auch die ausführbare Echse hinkompiliert wird. Such mal die Dateiendung und versuch die Bilder richtig einzulesen.

Zweites Problem ist die if-Abfrage. Ein Image ist ein VCL Objekt, so wie ein Button, ein Edit-Feld, oder eine Memo. Du hast zwei Bilder auf deinem Formular und mit der If-Abfrage prüfst du, ob Image1 identisch mit Image2 ist, was immer false zurückliefern wird. Stell es dir zunächst vielleicht mal wie 2 Bilderrahmen vor (ein roter und ein blauer), wo du Bilder "reinladen" kannst. Die zwei Rahmen sind nicht identisch, auch wenn identische Bilder eingeladen sind.

Am besten definierst du dir eine zusätzliche Variable BildIndex1, BildIndex2: integer, die mit ganzen Zahlen speichert, ob ABild (z.B. = 0) oder BBild (z.B. = 1) in image1 bzw. image2 geladen worden ist.

Dann wäre deine if Abfrage:

if BildIndex1= BildIndex2 then....


Um zufällige Bilder in deine Images einzuladen, guck dir mal den Befehl random an.

Besten Gruß
„Software wird schneller langsamer als Hardware schneller wird. “ (Niklaus Wirth, 1995)

Mein Netzwerktool: Lan.FS

Geändert von alleinherrscher (17. Dez 2015 um 15:41 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


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 09:27 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