JavaShuo
栏目
标签
win32 sdk绘制ListBox控件
时间 2019-11-19
标签
win32
win
sdk
绘制
listbox
控件
栏目
Windows
繁體版
原文
原文链接
1》产生:
html
[html]
view plain
copy
//
HWND CreateLB(HWND parentWnd)
{
HWND
hListBox
=
0
;
hListBox
=
CreateWindow
("LISTBOX",
NULL,
WS_CHILD|WS_VSCROLL | WS_TABSTOP | LBS_STANDARD | LBS_OWNERDRAWFIXED | LBS_HASSTRINGS,
230, 20, 60, 80,
parentWnd, (HMENU)IDC_LISTBOX,
(HINSTANCE) GetWindowLong(parentWnd, GWL_HINSTANCE),
NULL);
ShowWindow(hListBox,SW_SHOW);
SendMessage(hListBox,LB_ADDSTRING ,0,(LPARAM)"你好");
SendMessage(hListBox,LB_ADDSTRING ,0,(LPARAM)"我好");
SendMessage(hListBox,LB_ADDSTRING ,0,(LPARAM)"他好");
//
return hListBox;
}
2》指定size:
[cpp]
view plain
copy
case
WM_MEASUREITEM:
//ODT_LISTBOX
if
((
UINT
) wParam==IDC_LISTBOX)
{
LPMEASUREITEMSTRUCT lpmis = (LPMEASUREITEMSTRUCT) lParam;
lpmis->itemWidth=400;
lpmis->itemHeight=22;
}
break
;
3》画:
[cpp]
view plain
copy
case
WM_DRAWITEM:
if
((
UINT
) wParam==IDC_LISTBOX)
{
LPDRAWITEMSTRUCT pDI=(LPDRAWITEMSTRUCT) lParam;
HBRUSH
brsh=CreateSolidBrush(RGB(255-30*pDI->itemID, 128+40*pDI->itemID, 128+40*pDI->itemID));
//yellow
FillRect(pDI->hDC,&pDI->rcItem,brsh);
DeleteObject(brsh);
// text
SetBkMode(pDI->hDC,TRANSPARENT);
char
szText[260];
SendMessage(m_hListBox,LB_GETTEXT,pDI->itemID,(
LPARAM
)szText);
const
DWORD
dwStyle = DT_LEFT | DT_SINGLELINE | DT_VCENTER | DT_NOPREFIX | DT_END_ELLIPSIS;
DrawText(pDI->hDC, szText, strlen(szText), &pDI->rcItem, dwStyle);
}
break
;
4》要点:| LBS_OWNERDRAWFIXED | LBS_HASSTRINGS,
相关文章
1.
win32 sdk绘制ListBox控件
2.
win32项目,win32控制台,API,SDK,MFC
3.
自绘制listbox
4.
winform 重绘listbox
5.
win32开发(图形绘制)
6.
4. 2D绘制与控件绘制
7.
WinForm-ListBox控件美化
8.
C# ListBox:列表框控件
9.
列表控件 ListBox、ComboBox
10.
C# 公共控件之ListBox
更多相关文章...
•
ASP.NET ListBox 控件
-
ASP.NET 教程
•
Kotlin 条件控制
-
Kotlin 教程
•
漫谈MySQL的锁机制
•
Docker容器实战(六) - 容器的隔离与限制
相关标签/搜索
listbox
绘制
C++自绘控件
win32
控制
控件
sdk
c#listbox
控制项
Windows
SQLite教程
MySQL教程
MyBatis教程
插件
文件系统
0
分享到微博
分享到微信
分享到QQ
每日一句
每一个你不满意的现在,都有一个你没有努力的曾经。
最新文章
1.
以实例说明微服务拆分(以SpringCloud+Gradle)
2.
idea中通过Maven已经将依赖导入,在本地仓库和external libraries中均有,运行的时候报没有包的错误。
3.
Maven把jar包打到指定目录下
4.
【SpringMvc】JSP+MyBatis 用户登陆后更改导航栏信息
5.
在Maven本地仓库安装架包
6.
搭建springBoot+gradle+mysql框架
7.
PHP关于文件$_FILES一些问题、校验和限制
8.
php 5.6连接mongodb扩展
9.
Vue使用命令行创建项目
10.
eclipse修改启动图片
本站公众号
欢迎关注本站公众号,获取更多信息
相关文章
1.
win32 sdk绘制ListBox控件
2.
win32项目,win32控制台,API,SDK,MFC
3.
自绘制listbox
4.
winform 重绘listbox
5.
win32开发(图形绘制)
6.
4. 2D绘制与控件绘制
7.
WinForm-ListBox控件美化
8.
C# ListBox:列表框控件
9.
列表控件 ListBox、ComboBox
10.
C# 公共控件之ListBox
>>更多相关文章<<