![]() |
Problem mit case of
:?: :?: Hi Leute!
Ich bin mit meinem Programm zwar schon ein gutes Stückchen weitergekommen, stehe jetzt aber wieder einmal vor einem Rätsel... Per Zufall werden Zahlen ermittelt, die dann in einem Array abgelegt werden. Mit diesem geht’s dann in eine andere Prozedur, wo entsprechend der zahlen verschiedene Töne gespielt sollen, was auch sehr gut klappt. Aber: Es soll nicht nur Musik erklingen, sondern es soll auch Text ausgegeben werden, was leider NICHT klappt...! Hier ein Stück meiner Routine: (zum testen sollen (eigentlich...) erstmal verschiedene Worte erscheinen – hier "Hallo!"
Delphi-Quellcode:
Warum erklingt 1.wav, und Edit1.Text erscheint nicht???
zaehler1 := 0;
... while zaehler1 <= max do begin case song[zaehler1] of 1 : begin sndPlaySound('1.wav', SND_ASYNC); Edit1.Text :='Hallo!'; end; ... [edit=sakura] @Luckie: [delphi]-Tags ;-) Mfg, sakura[/edit] |
Re: Problem mit case of
Versuch mal die Zeilen umzudrehen. ;)
|
Re: Problem mit case of
das hatte ich bereits; leider ohne Erfolg. :(
Mit Einzelschrittausführung (Debugger) ist darüber hinaus zu erkennen, dass der Befehl (Edit1.Text...) sehr wohl abgearbeitet wird !??!? |
Re: Problem mit case of
Hallo rockycat,
kann es sein, dass Du in Deiner While -Schleife mit Edit1.Text noch was "anstellst"?
Delphi-Quellcode:
WHILE zaehler1 <= max DO
BEGIN CASE song[zaehler1] OF 1: BEGIN sndPlaySound('1.wav', SND_ASYNC); Edit1.Text := 'Hallo!'; END; // nämlich vielleicht genau hier? Edit1.Text :=''; // oder so was in der Art? END; |
Re: Problem mit case of
neee
Da kommen nur noch ein paar case Abfragen --> case melodie[zaehler1] of 1 : begin sndPlaySound('1.wav', SND_ASYNC); Edit1.Text :='hallo'; end; 2 : ... 3 : ... ... Dann ist die Prozedur zuende und das Programm springt zurück aufrufenden Stelle. Ach ja, zaehler1 wird natürlich noch hochgezähl (inc(zaehler1);), weil melodie ein Array ist und das nächste Element ermittelt werden soll |
Re: Problem mit case of
Dann schmeiß mal nach der änderung vom edit noch ein edit1.repaint oder ein application.processmessages rein!
Delphi-Quellcode:
while zaehler1 <= max do
begin case song[zaehler1] of 1 : begin sndPlaySound('1.wav', SND_ASYNC); Edit1.Text :='Hallo!'; Application.Processmessages; end; |
Re: Problem mit case of
Das war's!!!
ich Damke Dir, Schubi :zwinker: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:01 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