Create a Progress Bar with Win32 project
来源:互联网 发布:java @override 编辑:程序博客网 时间:2024/05/16 13:55
1.To create a Progress Bar with Win32 project, firstly, we need to create a Progress Bar with CreateWindowEx(), and then use SendMessage(hwndProgress,PBM_SETRANGE,0,MAKELPARAM(0, 100)) to set the range, use SendMessage(hwndProgress,PBM_SETSTEP,(WPARAM) 1,0) to set step. For code, see:
case WM_INITDIALOG:
hwndProgress = CreateWindowEx(0, PROGRESS_CLASS, NULL,
WS_CHILD | WS_VISIBLE, 20, 20, 260, 17,
hWndDlg, (HMENU)0, hInst, NULL);
SendMessage(hwndProgress,PBM_SETRANGE,0,MAKELPARAM(0, 100));
SendMessage(hwndProgress,PBM_SETSTEP,(WPARAM) 1,0);
case WM_TIMER:
SendMessage(hwndProgress,PBM_STEPIT,0,0);
2.To create a Progress Bar with Windows XP style, we need to link comctl32.lib 6.0 version or high, and specify PBS_MARQUEE flag in CreateWindowsEx(). For whole code, see:
#include <windows.h>
#include <commctrl.h>
#include "Resource.h"
#pragma comment(linker,"/manifestdependency:/"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'/"")
#pragma comment(lib,"comctl32.lib")
//---------------------------------------------------------------------------
HWND hWnd;
HINSTANCE hInst;
HWND hwndProgress;
LRESULT CALLBACK DlgProc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam);
int CurrentStep;
//---------------------------------------------------------------------------
INT WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow)
{
hInst = hInstance;
DialogBox(hInst, MAKEINTRESOURCE(IDD_CONTROLS_DLG),
hWnd, reinterpret_cast<DLGPROC>(DlgProc));
return FALSE;
}
//---------------------------------------------------------------------------
LRESULT CALLBACK DlgProc(HWND hWndDlg, UINT Msg,
WPARAM wParam, LPARAM lParam)
{
INITCOMMONCONTROLSEX InitCtrlEx;
InitCtrlEx.dwSize = sizeof(INITCOMMONCONTROLSEX);
InitCtrlEx.dwICC = ICC_PROGRESS_CLASS;
InitCommonControlsEx(&InitCtrlEx);
switch(Msg)
{
case WM_INITDIALOG:
hwndProgress = CreateWindowEx(0, PROGRESS_CLASS, NULL,
WS_CHILD | WS_VISIBLE|PBS_MARQUEE ,
20, 20, 260, 17,
hWndDlg, (HMENU)0, hInst, NULL);
SendMessage(hwndProgress,PBM_SETMARQUEE,(WPARAM) TRUE,(LPARAM)50);
return TRUE;
case WM_COMMAND:
switch(wParam)
{
case IDOK:
//SendMessage(hwndProgress,PBM_STEPIT,0,0);
//EndDialog(hWndDlg, 0);
return TRUE;
case IDCANCEL:
EndDialog(hWndDlg, 0);
return TRUE;
}
break;
}
return FALSE;
}
IDD_CONTROLS_DLG is ID of the dialog resource.
- Create a Progress Bar with Win32 project
- Create a Project with Eclipse
- Create a Project with Eclipse
- "HOW TO: Create a Smooth Progress Bar in Visual C# .NET"的学习笔记
- Ajax Upload; A file upload script with progress-bar, drag-and-drop
- ASP.NET File Upload with Progress Bar
- Create a Project with Eclipse 利用Eclipse建立一个项目
- 创建一个Eclipse项目【Create a Project with Eclipse】
- A progress bar (gauge box) -- dialog Linux
- Showing progress bar in a status bar pane
- Showing progress bar in a status bar pane
- progress bar
- Win32汇编--通用控件 Progress Bar 的使用
- Create new Team Project with a name of already deleted Team Project name (转)
- Custom Control for Text Over a Progress Bar
- come on,make a date progress bar together!
- 一、Create-a-new-project
- Create a simple unit test project with Visual Studio Unit Testing Framework
- S60v5软件和手机系统冲突列表
- 母鸡有外遇后公鸡经典对白
- 详解WinCE下USB Host驱动开发
- WPF技术与初识报表
- tomcat 启动报错
- Create a Progress Bar with Win32 project
- 配置bochs 2.4.1
- 一个阴历和阳历日期之间的转换实现(java)
- 比较两数据库的结构(收藏)
- vs2003运行过程中出现的一些错误汇总
- 用JS获得当前页面详细URL地址
- 增加Ubuntu磁盘空间
- PV ,UV, IP, PR
- 输出一个范围内的素数.....(题目不难,注意标记的重要性)