![]() |
Re: PfannkuPlus - Mein erstes Programm
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Toredo,
das Wackeln hab ich mit einem Timer und einer Scrollbar gemacht (Timer sehr kurze Intervalle, z.B. 8 ms, Scrollbar Visible auf false setzen):
Delphi-Quellcode:
Für das Klingeln hab ich mir einfach einen Klingelton im .wav Format gesucht und in die .exe eingebunden. Wenn Du nicht weißt wie das geht, ich hab mir hierzu mal eine kleine Anleitung geschrieben, die ich anhänge.
procedure TForm1.Timer2Timer(Sender: TObject);
begin Scrollbar2.Position := Scrollbar2.Position +1; end; procedure TForm1.ScrollBar2Change(Sender: TObject); begin Case Scrollbar2.Position of 1: begin Form1.Top := Form1.Top +1; Form1.Left := Form1.Left -1; end; 2: begin Form1.Top := Form1.Top -1; Form1.Left := Form1.Left -1; end; 3: begin Form1.Top := Form1.Top -1; Form1.Left := Form1.Left +2; end; 4: begin Form1.Top := Form1.Top +1; Form1.Left := Form1.Left +2; end; //usw., ca 30 mal end; Gruß, nezumi |
Re: PfannkuPlus - Mein erstes Programm
Hallo,
nettes Tool und sehr interessant, auf was für Gedanken manche kommen (das mit der versteckten Scrollbar, schon faszinierend, wenn auch sehr schlecht gelöst). ;) Du wirst dich mit der Rekursion noch nicht beschäftigt haben (Funktion/Prozedur, die sich selbst aufruft), doch damit kann man das sehr schön lösen. In den Stack (so eine Art Zwischenspeicher), werden die Werte für die Formularposition geschrieben und am Ende wieder rückwärts abgearbeitet, womit das Formular am Ende wieder vollautomatisch in die Ursprungsposition zurück gelangt. Falls es dich interessiert, das kann man so lösen (ganz ohne Timer):
Delphi-Quellcode:
Die Prozedur Delay ist, wie im Kommentar erwähnt, dazu da, um die Funktion
// Ersatz für sleep(), nur dass die Anwendung nicht einfriert
// Code ist aus der Code-Library procedure Delay(Milliseconds: Integer); var Tick: DWord; Event: THandle; begin Event := CreateEvent(nil, False, False, nil); try Tick := GetTickCount + DWord(Milliseconds); while (Milliseconds > 0) and (MsgWaitForMultipleObjects(1, Event, False, Milliseconds, QS_ALLINPUT) <> WAIT_TIMEOUT) do begin Application.ProcessMessages; if Application.Terminated then Exit; Milliseconds := Tick - GetTickcount; end; finally CloseHandle(Event); end; end; // eigentliche rekursive Prozedur procedure MoveForm(FLeft, FTop, Count: Integer); begin if Count > 0 then begin // "Random(9) - 4" erzeugt einen Zufallswert zwischen -4 und 4 MoveForm( Form1.Left + Random(9) - 4, Form1.Top + Random(9) - 4, Count - 1); end; Form1.Left := FLeft; Form1.Top := FTop; Delay(50); end; procedure TForm1.Button1Click(Sender: TObject); begin MoveForm(Left, Top, 20); end; ![]() Falls du verständnisfragen dazu hast, kannst du sie gerne stellen. Mit versteckten Komponenten zu "spielen" ist nicht schön. |
Re: PfannkuPlus - Mein erstes Programm
thx für den wackel/ring-code, ich hab endlich geschafft diese beiden funktionen zu benutzen.
thx mfG toredo |
Re: PfannkuPlus - Mein erstes Programm
Colle ausgefallene Idee,
ihr glaubt gar net dass in praktisch jedem Haushalt hier in USA der PC in der Kueche steht... :???: |
Re: PfannkuPlus - Mein erstes Programm
Wird ein Pfannkuchen gekocht? (is being cooked)
Wohl eher gebacken. (is being baken) Könnte mich auch irren... Und: front side und back side wird auseinander geschrieben. |
Re: PfannkuPlus - Mein erstes Programm
@ Mackhack
Danke für den Hinweis. Werde mein Vertriebsnetz in den Staaten umgehend ausbauen. Wusste doch, dass ich eine Marktlücke gefunden habe... :lol: @ 3_of_8 Kam mir auch komisch vor. Aber jemand der sich rühmt, der englischen Sprache mächtig zu sein, meinte, bei Pfannkuchen heiße es "cook". Hab ich dann einfach mal geglaubt... |
Re: PfannkuPlus - Mein erstes Programm
Hey.
Ich mag ja wirklich nicht meckern, aber ein Bild wäre eventuell nicht ganz schlecht. Dann weiß ich auch wirklich ob es für mich in Frage kommt und ob ich es testen will. Bin irgendwie der Meinung, dass das sehr viel in letzter Zeit vergessen! mfg shark |
Re: PfannkuPlus - Mein erstes Programm
Inovatives eigenständiges denken :thumb:
Ich werd das nächste mal beim pfannkuchen backen dein prog testen :D |
Re: PfannkuPlus - Mein erstes Programm
Zitat:
Ansonsten, tolles Programm, wenn mein WLAN bis in die Küche reichen würde, hätte ich meinen Laptop bestimmt öfter dort stehen, aber du gibst mir ja nen Grund :mrgreen: |
Re: PfannkuPlus - Mein erstes Programm
@3_of_8 and @nezumi
Pancakes werden definitiv nicht "baked" - "to bake" involviert, dass man etwas in einen heissen Ofen befoerdert. Pancakes werden "cooked" oder allenfalls noch "made". Statt "frone side" und "back side" ginge auch "top side" und "reverse side". Oder einfach "first and second side". :warn: Aber cooles Programm!!Setzt allerdings eine ziemlich gleichbleibend heisse Pfanne und definierte Teigmenge/Backvorgang voraus.... :gruebel: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:35 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