[MMSYS] Fix the main volume trackbar

- Increase the height of the trackbar in order to make it fully visible.
- Remove the selection range code.
- Set a range from 0 to 500 and fix the volume calculations accordingly.
- Set a tick frequency of 50 and a page size of 100.
- Play the default sound on TB_ENDTRACK notifications.
This commit is contained in:
Eric Kohl 2019-01-13 15:38:06 +01:00
parent fcadedb306
commit 0ec2fd4c3e
24 changed files with 39 additions and 43 deletions

View file

@ -9,7 +9,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 36
GROUPBOX "Сила на устройството", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "Слабо", -1, 62, 66, 30, 17
LTEXT "Силно", -1, 195, 66, 30, 17
AUTOCHECKBOX "За&глушено", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -14,7 +14,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 36
GROUPBOX "Hlasitost zařízení", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "Nízká", -1, 62, 66, 30, 17
LTEXT "Vysoká", -1, 195, 66, 30, 17
AUTOCHECKBOX "&Ztlumit", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -9,7 +9,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 36
GROUPBOX "Gerätelautstärke", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "Niedrig", -1, 62, 66, 30, 17
LTEXT "Hoch", -1, 195, 66, 30, 17
AUTOCHECKBOX "Stu&mm schalten", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -9,7 +9,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 20
GROUPBOX "Device volume", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "Low", -1, 62, 66, 30, 9
LTEXT "High", -1, 195, 66, 30, 9
AUTOCHECKBOX "&Mute", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -9,7 +9,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 20
GROUPBOX "Device volume", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "Low", -1, 62, 66, 30, 9
LTEXT "High", -1, 195, 66, 30, 9
AUTOCHECKBOX "&Mute", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -9,7 +9,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 36
GROUPBOX "Volumen del dispositivo ", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "Bajo", -1, 62, 66, 30, 17
LTEXT "Alto", -1, 195, 66, 30, 17
AUTOCHECKBOX "&Silencio", IDC_MUTE_CHECKBOX, 30, 78, 140, 10

View file

@ -9,7 +9,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 36
GROUPBOX "Volume du périphérique", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "Faible", -1, 62, 66, 30, 17
LTEXT "Élevé", -1, 195, 66, 30, 17
AUTOCHECKBOX "&Muet", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -11,7 +11,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 20
GROUPBOX "עוצמת התקן", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "נמוך", -1, 62, 66, 30, 9
LTEXT "גבוה", -1, 195, 66, 30, 9
AUTOCHECKBOX "השתק", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -9,7 +9,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 20
GROUPBOX "Device volume", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "Low", -1, 62, 66, 30, 9
LTEXT "High", -1, 195, 66, 30, 9
AUTOCHECKBOX "&Mute", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -9,7 +9,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 36
GROUPBOX "Volume del dispositivo", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "Basso", -1, 62, 66, 30, 17
LTEXT "Alto", -1, 195, 66, 30, 17
AUTOCHECKBOX "&Mute", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -9,7 +9,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 20
GROUPBOX "デバイスの音量", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "低", -1, 62, 66, 30, 9
LTEXT "高", -1, 195, 66, 30, 9
AUTOCHECKBOX "ミュート(&M)", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -9,7 +9,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 36
GROUPBOX "Volume", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "Laag", -1, 62, 62, 30, 17
LTEXT "Hoog", -1, 195, 62, 30, 17
AUTOCHECKBOX "&Dempen", IDC_MUTE_CHECKBOX, 25, 78, 190, 10

View file

@ -9,7 +9,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 36
GROUPBOX "Enhets volum", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "Lavt", -1, 62, 66, 30, 17
LTEXT "Høyt", -1, 195, 66, 30, 17
AUTOCHECKBOX "&Demp", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -22,7 +22,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 36
GROUPBOX "Głośność urządzenia", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "Mała", -1, 62, 66, 30, 17
LTEXT "Duża", -1, 195, 66, 30, 17
AUTOCHECKBOX "&Wycisz", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -9,7 +9,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 20
GROUPBOX "Device volume", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "Low", -1, 62, 66, 30, 9
LTEXT "High", -1, 195, 66, 30, 9
AUTOCHECKBOX "&Mute", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -14,7 +14,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 36
GROUPBOX "Volum", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "Redus", -1, 62, 66, 30, 17
LTEXT "Ridicat", -1, 195, 66, 30, 17
AUTOCHECKBOX "A&muțește tot", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -9,7 +9,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 19
GROUPBOX "Громкость микшера", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "ниже", -1, 62, 66, 30, 9
LTEXT "выше", -1, 195, 66, 30, 9
AUTOCHECKBOX "В&ыключить звук", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -14,7 +14,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 36
GROUPBOX "Hlasitosť zariadenia", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "nízka", -1, 62, 66, 30, 17
LTEXT "vysoká", -1, 195, 66, 30, 17
AUTOCHECKBOX "S&tlmiť", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -13,7 +13,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 20
GROUPBOX "Volumi Pjesës", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "Poshtë", -1, 62, 66, 30, 9
LTEXT "Lart", -1, 195, 66, 30, 9
AUTOCHECKBOX "&Mute", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -11,7 +11,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 20
GROUPBOX "Aygıt Ses Düzeyi", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "Düşük", -1, 62, 66, 30, 9
LTEXT "Yüksek", -1, 195, 66, 30, 9
AUTOCHECKBOX "&Sessiz", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -17,7 +17,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 36
GROUPBOX "Гучність мікшера", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "нижче", -1, 62, 66, 30, 17
LTEXT "вище", -1, 195, 66, 30, 17
AUTOCHECKBOX "&Вимкнути звук", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -17,7 +17,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 36
GROUPBOX "设备音量", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "低", -1, 62, 66, 30, 17
LTEXT "高", -1, 195, 66, 30, 17
AUTOCHECKBOX "静音(&M)", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -15,7 +15,7 @@ BEGIN
LTEXT "", IDC_DEVICE_NAME, 40, 10, 194, 36
GROUPBOX "裝置音量", -1, 7, 30, 230, 100, WS_GROUP
CONTROL "", IDC_MUTE_ICON, "Static", SS_ICON | WS_VISIBLE, 17, 45, 32, 32
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_ENABLESELRANGE | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 14
CONTROL "", IDC_VOLUME_TRACKBAR, "msctls_trackbar32", TBS_AUTOTICKS | TBS_BOTTOM | TBS_HORZ | WS_TABSTOP, 65, 45, 140, 20
LTEXT "低", -1, 62, 66, 30, 17
LTEXT "高", -1, 195, 66, 30, 17
AUTOCHECKBOX "靜音(&M)", IDC_MUTE_CHECKBOX, 50, 78, 140, 10

View file

@ -11,7 +11,10 @@
#include <shellapi.h>
#define VOLUME_DIVIDER 0xFFF
#define VOLUME_MIN 0
#define VOLUME_MAX 500
#define VOLUME_TICFREQ 50
#define VOLUME_PAGESIZE 100
typedef struct _IMGINFO
{
@ -35,7 +38,7 @@ typedef struct _GLOBAL_DATA
DWORD volumeMinimum;
DWORD volumeMaximum;
DWORD volumeValue;
DWORD volumeStep;
} GLOBAL_DATA, *PGLOBAL_DATA;
@ -168,6 +171,7 @@ GetVolumeControl(PGLOBAL_DATA pGlobalData)
pGlobalData->volumeMinimum = mxc.Bounds.dwMinimum;
pGlobalData->volumeMaximum = mxc.Bounds.dwMaximum;
pGlobalData->volumeControlID = mxc.dwControlID;
pGlobalData->volumeStep = (pGlobalData->volumeMaximum - pGlobalData->volumeMinimum) / (VOLUME_MAX - VOLUME_MIN);
}
@ -303,12 +307,10 @@ InitVolumeControls(HWND hwndDlg, PGLOBAL_DATA pGlobalData)
GetVolumeValue(pGlobalData);
SendDlgItemMessage(hwndDlg, IDC_DEVICE_NAME, WM_SETTEXT, 0, (LPARAM)mxc.szPname);
SendDlgItemMessage(hwndDlg, IDC_VOLUME_TRACKBAR, TBM_SETRANGE, (WPARAM)TRUE,
(LPARAM)MAKELONG(pGlobalData->volumeMinimum, pGlobalData->volumeMaximum/VOLUME_DIVIDER));
SendDlgItemMessage(hwndDlg, IDC_VOLUME_TRACKBAR, TBM_SETPAGESIZE, (WPARAM)FALSE, (LPARAM)1);
SendDlgItemMessage(hwndDlg, IDC_VOLUME_TRACKBAR, TBM_SETSEL, (WPARAM)FALSE,
(LPARAM)MAKELONG(pGlobalData->volumeMinimum, pGlobalData->volumeValue/VOLUME_DIVIDER));
SendDlgItemMessage(hwndDlg, IDC_VOLUME_TRACKBAR, TBM_SETPOS, (WPARAM)TRUE, (LPARAM)pGlobalData->volumeValue/VOLUME_DIVIDER);
SendDlgItemMessage(hwndDlg, IDC_VOLUME_TRACKBAR, TBM_SETRANGE, (WPARAM)TRUE, (LPARAM)MAKELONG(VOLUME_MIN, VOLUME_MAX));
SendDlgItemMessage(hwndDlg, IDC_VOLUME_TRACKBAR, TBM_SETTICFREQ, VOLUME_TICFREQ, 0);
SendDlgItemMessage(hwndDlg, IDC_VOLUME_TRACKBAR, TBM_SETPAGESIZE, 0, VOLUME_PAGESIZE);
SendDlgItemMessage(hwndDlg, IDC_VOLUME_TRACKBAR, TBM_SETPOS, (WPARAM)TRUE, (LPARAM)(pGlobalData->volumeValue - pGlobalData->volumeMinimum) / pGlobalData->volumeStep);
}
VOID
@ -344,8 +346,6 @@ VolumeDlgProc(HWND hwndDlg,
pGlobalData = (PGLOBAL_DATA)GetWindowLongPtr(hwndDlg, DWLP_USER);
switch(uMsg)
{
case MM_MIXM_LINE_CHANGE:
@ -366,8 +366,7 @@ VolumeDlgProc(HWND hwndDlg,
case MM_MIXM_CONTROL_CHANGE:
{
GetVolumeValue(pGlobalData);
SendDlgItemMessage(hwndDlg, IDC_VOLUME_TRACKBAR, TBM_SETSEL, (WPARAM)FALSE, (LPARAM)MAKELONG(pGlobalData->volumeMinimum, pGlobalData->volumeValue/VOLUME_DIVIDER));
SendDlgItemMessage(hwndDlg, IDC_VOLUME_TRACKBAR, TBM_SETPOS, (WPARAM)TRUE, (LPARAM)pGlobalData->volumeValue/VOLUME_DIVIDER);
SendDlgItemMessage(hwndDlg, IDC_VOLUME_TRACKBAR, TBM_SETPOS, (WPARAM)TRUE, (LPARAM)(pGlobalData->volumeValue - pGlobalData->volumeMinimum) / pGlobalData->volumeStep);
break;
}
case WM_INITDIALOG:
@ -455,10 +454,11 @@ VolumeDlgProc(HWND hwndDlg,
HWND hVolumeTrackbar = GetDlgItem(hwndDlg, IDC_VOLUME_TRACKBAR);
if (hVolumeTrackbar == (HWND)lParam)
{
pGlobalData->volumeValue = (DWORD)SendDlgItemMessage(hwndDlg, IDC_VOLUME_TRACKBAR, TBM_GETPOS, 0, 0)*VOLUME_DIVIDER;
pGlobalData->volumeValue = ((DWORD)SendDlgItemMessage(hwndDlg, IDC_VOLUME_TRACKBAR, TBM_GETPOS, 0, 0) * pGlobalData->volumeStep) + pGlobalData->volumeMinimum;
SetVolumeValue(pGlobalData);
SendDlgItemMessage(hwndDlg, IDC_VOLUME_TRACKBAR, TBM_SETSEL, (WPARAM)TRUE,
(LPARAM)MAKELONG(pGlobalData->volumeMinimum, pGlobalData->volumeValue/VOLUME_DIVIDER));
if (LOWORD(wParam) == TB_ENDTRACK)
PlaySound((LPCTSTR)SND_ALIAS_SYSTEMDEFAULT, NULL, SND_ALIAS_ID | SND_ASYNC);
}
break;
}
@ -472,11 +472,7 @@ VolumeDlgProc(HWND hwndDlg,
break;
case WM_NOTIFY:
if (((LPNMHDR)lParam)->code == (UINT)NM_RELEASEDCAPTURE)
{
PlaySound((LPCTSTR)SND_ALIAS_SYSTEMDEFAULT, NULL, SND_ALIAS_ID | SND_ASYNC);
}
else if (((LPNMHDR)lParam)->code == (UINT)PSN_APPLY)
if (((LPNMHDR)lParam)->code == (UINT)PSN_APPLY)
{
SaveData(hwndDlg);
}