社区
界面
帖子详情
一个SDK问题
Jinhao
2003-07-27 07:18:13
如何用SDK来改变某个已知hwnd的Button的字体和字体颜色。
希望能有Code
...全文
115
4
打赏
收藏
一个SDK问题
如何用SDK来改变某个已知hwnd的Button的字体和字体颜色。 希望能有Code
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tryber
2003-09-13
打赏
举报
回复
用BS_OWNERDRAW风格Create,处理WM_DRAWITEM消息,code:
用app wizard生成一win32 application,
下面是我的InitInstance和WndProc
BOOL InitInstance(HINSTANCE hInstance, int nCmdShow)
{
HWND hWnd;
hInst = hInstance; // Store instance handle in our global variable
hWnd = CreateWindow(szWindowClass, szTitle, WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, 0, CW_USEDEFAULT, 0, NULL, NULL, hInstance, NULL);
if (!hWnd)
{
return FALSE;
}
///hwndbtn is global hwnd define before
hwndbtn=CreateWindow(_T("BUTTON"),_T("ownerdraw"),
WS_CHILD|WS_VISIBLE|WS_BORDER|BS_OWNERDRAW,10,10,90,30,hWnd,NULL,NULL,NULL);
if(hwndbtn==NULL)
return FALSE;
CreateWindow(_T("BUTTON"),_T("THISISADEFAULTBTN"),
WS_CHILD|WS_VISIBLE|WS_BORDER,100,100,150,30,hWnd,NULL,NULL,NULL);
ShowWindow(hWnd, nCmdShow);
UpdateWindow(hWnd);
return TRUE;
}
//
// FUNCTION: WndProc(HWND, unsigned, WORD, LONG)
//
// PURPOSE: Processes messages for the main window.
//
// WM_COMMAND - process the application menu
// WM_PAINT - Paint the main window
// WM_DESTROY - post a quit message and return
//
//
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
int wmId, wmEvent;
PAINTSTRUCT ps;
HDC hdc;
TCHAR szHello[MAX_LOADSTRING];
LoadString(hInst, IDS_HELLO, szHello, MAX_LOADSTRING);
DRAWITEMSTRUCT* pds;
TCHAR btntext[20];
COLORREF oldtextclr;
RECT btnrc;
HFONT hf;
HFONT oldhf=NULL;
switch (message)
{
case WM_DRAWITEM:
pds=(DRAWITEMSTRUCT*)lParam;
if((pds->hwndItem ==hwndbtn)&&(pds->CtlType ==ODT_BUTTON))
{
GetWindowText(hwndbtn,btntext,20);
oldtextclr=::GetTextColor(pds->hDC);
::SetTextColor(pds->hDC,RGB(255,0,0));
GetClientRect(hwndbtn,&btnrc);
int fonthi=-MulDiv(8,GetDeviceCaps(
pds->hDC,LOGPIXELSY),72);
hf=CreateFont(fonthi,0,0,0,0,0,0,0,0,0,0,0,0,
_T("宋体"));
if(hf!=NULL)
oldhf=(HFONT)SelectObject(pds->hDC,(HGDIOBJ)hf);
DrawText(pds->hDC,btntext,
_tcslen(btntext),&btnrc,DT_CENTER);
SetTextColor(pds->hDC,oldtextclr);
if(oldhf!=NULL)
SelectObject(pds->hDC,(HGDIOBJ)oldhf);
if(hf!=NULL)
DeleteObject((HGDIOBJ)hf);
}
break;
case WM_COMMAND:
wmId = LOWORD(wParam);
wmEvent = HIWORD(wParam);
// Parse the menu selections:
switch (wmId)
{
case IDM_ABOUT:
DialogBox(hInst, (LPCTSTR)IDD_ABOUTBOX, hWnd, (DLGPROC)About);
break;
case IDM_EXIT:
DestroyWindow(hWnd);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
break;
case WM_PAINT:
hdc = BeginPaint(hWnd, &ps);
// TODO: Add any drawing code here...
RECT rt;
GetClientRect(hWnd, &rt);
DrawText(hdc, szHello, strlen(szHello), &rt, DT_CENTER);
EndPaint(hWnd, &ps);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
return 0;
}
cloudtarget
2003-09-12
打赏
举报
回复
up
Jinhao
2003-07-27
打赏
举报
回复
可以
铖邑
2003-07-27
打赏
举报
回复
可不可以发消息?
融云
SDK
2.0 快速集成 Demo
在这个Demo中,MyApp应该是已经整合了融云
SDK
的
一个
基本应用框架,开发者可以通过分析这个项目,学习如何在自己的应用中调用融云提供的接口和服务,实现聊天功能。 为了快速集成融云
SDK
2.0,开发者需要按照以下...
Java 初探:编写
一个
简单的
SDK
,导出并且用于另
一个
项目中
这里,为了能够帮助遇到了同样
问题
的初学者,我特地在本地写了
一个
demo ,在这个 demo 中,有两个项目: test-
sdk
用于提供
sdk
。 use-test-
sdk
用于使用提供的
sdk
。 通过这个 demo 的学习,我们就可以学会 sd
什么是
SDK
?
SDK
是什么意思?
其实很简单,
SDK
就是 Software Development Kit 的...具体到我们这个系列教程,我们后面只讨论广义
SDK
的
一个
子集——即开发 Windows 平台下的应用程序所使用的
SDK
。 呵呵,其实上面只是说了
一个
SDK
大概的概念而
Android
SDK
开发2
SDK
初始化
问题
上一篇文章讲了将项目或者moudle打成aar的过程,但是打成aar之后也会遇到一系列的
问题
: 1.
SDK
初始化
问题
和组件间通信
问题
2.
SDK
网络请求和第三库的依赖
问题
3.
SDK
包大小的优化 4.
SDK
的混淆和加密 5.
SDK
的版本...
Unity接入多个
sdk
遇到的
问题
最近要接入好几个广告的
sdk
,如果单个
sdk
的接入,按照文档来是完全没有
问题
的。但是当你把几个
sdk
都导入到unity里面进行Android打包的时候就会出现报错了。 解决方案:我的这个是因为Manifest文件里面有重复,...
界面
15,976
社区成员
115,866
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章