Autor Beitrag
Lobo
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Mi 14.08.02 16:42 
Hallo allerseits,
weiß jmd. von Euch, wie ich einen Sound über die Lautsprecher so lange ausgeben kann, bis ich eine Stop-Taste drücke?
Mit dem Befehl Windows.Beep(X,T) kann ich das zwar machen,
aber so lange der Sound ertönt, sind alle anderen Tasten gesperrt.

_________________
"Habe Mut, dich deines eigenen Verstandes zu bedienen"
Immanuel Kant
Black Lightning
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 69



BeitragVerfasst: Fr 16.08.02 00:59 
hi,
ist vielleicht nicht die beste Lösung, aber du könntest ja einen Timer verwenden, mit dem Intervall von 1000ms und in dessen onTimer procedure führt er dann den beep 1000ms lang aus, ausser du hast mittels eines buttons eine globale Boolean-Variable auf false gesetzt....wäre eine nicht gänzlich undenkbare Möglichkeit.

Kannst es ja mal versuchen

mfg
Black Lightning

_________________
--erst programmieren, dann denken, dann debuggen--
Lobo Threadstarter
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Fr 16.08.02 16:04 
Titel: Eigentlich eine gute Idee, aber Problem
hi Black Lightning,
das mit dem Timer habe ich versucht und es klappt fast.
Mit einem Button kann ich auch den Timer wie geplant beenden.
Aber der Ton wird leider nicht durchgängig erzeugt. Nach den z.B. 1000ms stoppt der Ton kurz, und fängt wieder an.
Und dieses "stoppen" ist leider nicht wegzubekommen.

Gruß
Lobo

_________________
"Habe Mut, dich deines eigenen Verstandes zu bedienen"
Immanuel Kant
Black Lightning
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 69



BeitragVerfasst: Fr 16.08.02 22:41 
hi Lobo,

also ich hab das jetzt auch mal gemacht und die Zeit auf 1ms eingestellt. Vorteil ist das er menschenmerklich sofort abbricht wenn man es wünscht und das die Störpausen nicht vorhanden und zumindest nicht hörbar ist.
Bzw ich hab bei diesen Einstellungen nichts gehört.

Wie lange brauchst du den beep denn maximal?

Vielleicht wäre, falls das mit 1ms timing nicht zufriedenstellend ist, möglich den beep in einem zweiten erzeugten Thread abzuspielen und die zeit auf die maximal nötige einstellen. Wenn der Thread vom Main Thread geschlossen wird, sollte der beep, ob fertig oder nicht, auch aufhören.

Aber versuch erstmal ob es nicht reicht die Zeiten auf 1ms einzustellen.

gruß
Black Lightning

_________________
--erst programmieren, dann denken, dann debuggen--
Lobo Threadstarter
Hält's aus hier
Beiträge: 7



BeitragVerfasst: Sa 17.08.02 02:14 
hi black lightning,
kannst du mir mal genau deine Einstellungen sagen?
Also die vom Timer und die vom Windows.Beep(X,T)?
...
Der beep sollte unbegrenzt laufen können.

Bei mir kommt da immer so ein "knacken" im Lautsprecher, wenn der Interval zu Ende ist.

Gruß

Lobo

(Vielleicht sollte ich das auf einem anderen PC auch mal ausprobieren...)

_________________
"Habe Mut, dich deines eigenen Verstandes zu bedienen"
Immanuel Kant
Black Lightning
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 69



BeitragVerfasst: Sa 17.08.02 11:38 
moin lobo,
ausblenden Quelltext
1:
windows.beep(200,1);					

und intervall des Timers im OI ebenfalls auf 1 stellen.

gruß
BL

_________________
--erst programmieren, dann denken, dann debuggen--