- Offizieller Beitrag
Schon wieder eine kleine UDF (ich bin mittlerweile vom WindowProc überzeugt)!
Dieses Mal gibt es ein Volume-Controlelement. Das kann man irgendwo auf der eigenen GUI erstellen und es übernimmt dann eigenständig (Standardwert) die Wave-Lautstärke-Einstellung für das Script.
Man kann dem Control-Element aber auch eine Funktion zuweisen, sodass bei einer Änderung nur diese Funktion aufgerufen wird. Das ist vor allem interessant, wenn man die BASS-UDF verwendet und die Lautstärke-Einstellung für den Stream verwenden will.
Das kann man schlecht erklären, deswegen habe ich das in das Beispielscript mit eingebaut.
Die Lautstärke kann man mit einem linken Mausklick auf das Controlelement oder durch drehen des Mausrades über dem Controlelement verändern. Ein linker Mausklick auf das Lautsprechersymbol schaltet das Stummschalten ein/aus.
Das Controlelement passt sich standardmäßig an das Parent-Window an. Das heißt, dass die Hintergrundfarbe vom Volume-Control gleich der Hintergrundfarbe vom Fenster entspricht. Die Textfarbe ist dann eine Invertierung davon. Weil das aber nicht bei jeder Hintergrundfarbe passt, gibt es auch eine Funktion zum ändern der Farben.
Die Größe des Controlelements habe ich fest auf 150x50 Pixel festgelegt. Anfangs wollte ich das noch konfigurierbar machen, aber der Aufwand das alles anzupassen war mir zu groß. Man kann also lediglich die Position (Left, Top) anpassen.
Update v1.1.0.0 (19.07.2018):
- Ein "Fehler" in "_WinAPI_HiWord" und "_WinAPI_LoWord". Die Funktionen interpretieren alles als Unsigned Int. Dadurch kam es bei Multi-Monitor-Umgebungen zu Fehlern. Behoben!
- Kleine Änderung beim Refresh. Bei Änderungen wird jetzt nicht mehr "_WinAPI_RedrawWindow", sondern gleich die interne Funktion "_GuiCtrlVolume_SetVolumeGraphic" aufgerufen.