![]() |
Re: Kopf oder Zahl
Nimm 2 TImage, lad da jeweils eins der beiden Bilder rein und setz entsprechend Deiner Anforderung eins der beiden nach vorn (das geht mit BringToFront) bzw. das andere nach hinten (SendToBack). Der Rest ist Überlegung.
|
Re: Kopf oder Zahl
ich bekomme es einfach nicht hin ich gebe auf!
|
Re: Kopf oder Zahl
Zitat:
|
Re: Kopf oder Zahl
Schade. Grad wo ich das Popcorn kalt gestellt, und das Bier gezuckert hab :cry:
|
Re: Kopf oder Zahl
Liste der Anhänge anzeigen (Anzahl: 1)
so ...
.. ein Set und eine Klasse:
Delphi-Quellcode:
die Methoden:
TSeite = set of (Kopf,Zahl);
TMuenze = class(TObject) private kopfSeite : TBitmap; zahlSeite : TBitmap; oben : TSeite; public constructor Create; virtual; destructor Destroy; override; procedure werfen; procedure zeigen(ausgabeImage: TImage); overload; function zeigen:AnsiString; overload; end;
Delphi-Quellcode:
wie man es nutzt:
constructor TMuenze.Create;
begin inherited create; randomize; kopfSeite := TBitmap.Create; kopfSeite.LoadFromFile(ExtractFilePath(ParamStr(0))+'MKopf.bmp'); zahlSeite := TBitmap.Create; zahlSeite.LoadFromFile(ExtractFilePath(ParamStr(0))+'MZahl.bmp'); end; destructor TMuenze.Destroy; begin kopfSeite.Free; zahlSeite.Free; end; procedure TMuenze.werfen; var kopfWurf : Boolean; begin kopfWurf := random(2)+1 = 1; if kopfWurf then oben := [Kopf] else oben := [Zahl]; end; procedure TMUenze.zeigen(ausgabeImage: TImage); begin ausgabeImage.Stretch := true; ausgabeImage.Proportional := true; if oben = [Kopf] then ausgabeImage.Picture.bitmap.Assign(kopfSeite) else ausgabeImage.Picture.bitmap.Assign(zahlSeite); end; function TMuenze.zeigen:AnsiString; begin if oben = [Kopf] then result := 'Kopf' else result := 'Zahl'; end;
Delphi-Quellcode:
Wie man aus dem Quelltext erkennen kann, sollten die bmp Dateien im
procedure TForm1.Button1Click(Sender: TObject);
begin muenze.werfen; muenze.zeigen(Image1); label1.Caption:=muenze.zeigen; end; gleichen Ordner wie die Applikation liegen. Nicht zu vergessen sind: Eine Instanz der Klasse zu erzeugen und auch wieder freizugeben. Grüße Klaus |
Re: Kopf oder Zahl
Sehr gut finde ich die Umsetzung als Set - so kann man bei Gelegenheit auch die Zustände "Kopf und Zahl" sowie "Weder Kopf noch Zahl" darstellen :)
Nicht zu vergessen: Die Euroumstellung. Die 1€ Münze hat ja nur Zahl oder Wappen/Adler - das kann man direkt umsetzen zu [Zahl] und [] :mrgreen: Und besonders Praktisch ist das, wenn bald die Münze erfunden wird, die gleichzeitig auf beiden Seiten landen kann :mrgreen: |
Re: Kopf oder Zahl
Schade, ab Post 52 habt Ihr ihn wohl vergrault. :(
@Peter 16 Melde Dich nach der Schule noch 'mal wieder und berichte, was der Lehrer von Deiner Arbeit hält bzw. welche Fortschritte Du gemacht hast. Gruß Wolfgang |
Re: Kopf oder Zahl
Naja, da Klaus nun alles gemacht hat, kann man wohl nicht mehr von "seiner" Arbeit sprechen. :zwinker:
|
Re: Kopf oder Zahl
@Die Muhkuh
Zitat:
- Tutorials von Delphi-Treff abarbeiten - Crashkurs Delphi dto. Als Anfänger mit vllt. 2 Doppelstunden Delphi-Unterricht hätte ich nach Post #52 auch aufgegeben. Gruß Wolfgang |
Re: Kopf oder Zahl
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz