据我所知,在任务栏按钮中创建进度条的唯一方法是使用ITaskbarList3 接口,但这只能在 C++ 中使用,而不能在 C 中使用。有没有办法在 C 中做到这一点,只与 winapi 函数交互?
主页
/
user-24817869
sad's questions
sad
Asked:
2025-04-09 09:57:19 +0800 CST
我尝试PBS_MARQUEE
在窗口中添加一个样式进度条,它确实在窗口中显示为一个正常的进度条,但当我尝试使用 使其移动时SendMessage
(动画应该看起来像 Windows XP 启动屏幕上的进度条),它仍然像往常一样是一个灰色框。如果有人知道 WinAPI C 进度条的工作原理,能否请您说明如何为滚动进度条制作动画?
以下是正在创建的进度条的代码,并且可能使用以下动画SendMessage
:
case WM_CREATE:
INITCOMMONCONTROLSEX icc = {sizeof(INITCOMMONCONTROLSEX), ICC_PROGRESS_CLASS}
InitCommonControlsEx(&icc);
hwndPB = CreateWindowExA(0, PROGRESS_CLASS, NULL,
WS_CHILD | WS_VISIBLE | PBS_MARQUEE,
50, 200, 400, 20, hwnd, NULL,
((LPCREATESTRUCT)lParam)->hInstance, NULL);
SendMessage(hwndPB, PBM_SETMARQUEE, 1, 1000);
UpdateWindow(hwnd);
break;