2012-12-15 06:40
⁄ 工业·编程
⁄ 共 6852字
说到这还是开头给大家介绍一下,有关位图的知识吧,以及对于我们比较有用的几个关于位图的结构体。 一.位图结构如下:字串4
---- 一、BMP文件结构 ---- 1. BMP文件组成 ---- BMP文件由文件头、位图信息头、颜色信息和图形数据四部分组成。 ---- 2. BMP文件头 ---- BMP文件头数据结构含有BMP文件的类型、文件大小和位图起始位置等信息。 ---- 其结构定义如下: typedef struct tagBITMAPFILEHEADER { WO...
UI界面阅读全文
2012-12-13 11:49
⁄ 工业·编程
⁄ 共 925字
使对话框中的控件大小随对话框尺寸的改变而改变(大小、位置):
方法思想:获取指定控件的大小,然后根据对话框当前尺寸与变化前尺寸的比例来改变指定控件的大小和位置。在OnSize函数中进行操作:
void Cformview::OnSize(UINTnType, int cx, int cy)
{
CFormView::OnSize(nType,cx, cy);
// TODO: 在此处添加消息处理程序代码
if (nType==SIZE_MINIMIZED)//最小化时不处理
return;
CWnd *pwnd;
pwnd=GetDlgItem(IDC_BUTTON1);...
UI界面阅读全文
2012-09-12 19:50
⁄ 工业·编程
⁄ 共 2741字
为了实现菜单的自绘,花了我几个小时,其实真正解决后又发现很简单。实现菜单的自绘只需要三个步骤:
第一步:将所有菜单项设置为MF_OWNERDRAW,即自绘模式
第二步:在WM_MEASUREITEM消息中设置菜单项的大小
第三步:在WM_DRAWITEM消息中进行菜单项的绘制
问题首先出现在了第一步,我要绘制的是一个上下文菜单,即右键菜单,要将菜单项设置为MF_OWNERDRAW,需要用到ModifyMenu函数,起始由于ModifyMenu函数的参数设置错误,导致...
UI界面阅读全文
2012-09-12 18:58
⁄ 工业·编程
⁄ 共 2679字
如何为我的游戏实现一个UI系统,这个问题我想了很久,不过我现在可不像开始的时候那样一点思路也没有。如果你也被这个问题所困扰,我十分乐意与你分享这几天来的学习成果。嘿嘿,我是不是有点得意忘形了?
在开始之前,我要提醒你,学而不思则惘。在看这篇文章的时候,请时刻保持头脑清醒,如果有什么不太明白的话,请停下一两分钟,好好想想,这篇文章可不是囫囵吞枣就能看懂的哦!此外这篇文章是建立在部分实例和猜测的基础上...
UI界面阅读全文
2012-09-10 11:46
⁄ 工业·编程
⁄ 共 2505字
void CWindouDlg::OnButton1() { // TODO: Add your control notification handler code here
PlaySound(MAKEINTRESOURCE(IDR_WAVE1),AfxGetResourceHandle(),SND_ASYNC| SND_RESOURCE|SND_NODEFAULT);//使用PlaySound需要包含头文件Header: Declared in mmsystem.h. &...
UI界面阅读全文
2012-09-10 11:26
⁄ 工业·编程
⁄ 共 10049字
最近因工作需求,需要自绘CTreeCtrl。由于原来从来没有自绘过,开始在网上搜索资料,查询(因此本文有些知识可能不全面,或许还有更好的办法来实现,还请大家多多指教。)经过一段时间的编写,终于写好了。在此,感谢网友bunpkin提供的实例参考。
先贴上效果图,如果觉得还不错,那就继续往下看吧。如果觉得不行的,请飘过。
如何你看见这句话我会很高兴,因为至少我写的东西对你还是有一点点的吸引了。在...
CTreeCtrl, UI界面阅读全文
2012-09-09 22:01
⁄ 工业·编程
⁄ 共 1847字
程序最小化后不能还原,一般原因是程序中至少存在一个Popup类型的窗口引起的,因为Popup类型的子窗口即使由于父窗口的隐藏而隐藏,其WS_VISIBLE属性仍然是可见的,当用户再次点击任务栏的程序图标时,Popup窗口会拦截系统(还原)消息,使主程序框架无法接收到系统消息,从而导致主程序无法正常还原。如果将其修改为Child类型的窗口,那么主程序的最小化和还原的功能就可以正常了。不过在实际项目中,往往就需要一个Popup类型的...
UI界面阅读全文
2012-09-08 21:39
⁄ 工业·编程
⁄ 共 205字
将当前焦点由一个CButton转移到另外一个CButton上,可以使用WM_NEXTDLGCTL消息,可以使用下面代码将焦点移到IDCANCEL标示的Button上 .
CButton* pButton = (CButton*)GetDlgItem(IDCANCEL); SendMessage/PostMessage(WM_NEXTDLGCTL, (WPARAM)pButton->GetSafeHwnd(), TRUE);
UI界面阅读全文
2012-09-08 21:38
⁄ 工业·编程
⁄ 共 1054字
// 派生自CButton类,主要过滤WM_LBUTTONDOWN 、WM_LBUTTONUP和WM_MOUSEMOVE消息。
BOOL m_bFlag = FALSE; // 成员变量,用来标示鼠标是否按下, 初始化为FALSE CPoint m_pt; // 成员变量,用来保存当前坐标值
BOOL CXXButton::PreTranslateMessage(MSG* pMsg) { // TODO: Add your specialized code here and/or call the base class switch(pMsg->message) ...
UI界面阅读全文
2012-09-07 07:00
⁄ 工业·编程
⁄ 共 2185字
如果要对ListBox控件进行自定义绘制(美化),那么首先必须将ListBox的DrawMode属性设置为OwnerDrawVariable或OwnerDrawFixed。ListBox有个ItemHeight属性,在DrawMode设置为Normal时,这个属性是不可设置的,并且其值是根据当前字体进行计算获得的。只有当DrawMode设置为OwnerDrawVariable或OwnerDrawFixed时,设置ItemHeight才生效。
属性
说明
Normal 组件的所有元素都由操作系统绘制,并且元素大小都相等。
OwnerD...
UI界面阅读全文