2012-09-05 11:21
⁄ 工业·编程
⁄ 共 2273字
1、 ListCtrl添加左键单击(NM_CLICK)函数(这个很重要)
2、 ListCtrl风格设置(一般是网格)
一般listctrl默认view风格为report,一般在OnInitDialog函数中:
LONG m_lStyle;
m_lStyle = GetWindowLong( m_list.m_hWnd , GWL_STYLE);//获取当前窗口style
m_lStyle |= LVS_EX_FULLROWSELECT;//选中某行使整行高亮(只适用与report风格的listctrl)
m_lStyle |= LVS_EX_GRIDLINES;//网格线(只适用与report风格的listctrl)
/...
ListCtrl, UI界面阅读全文
2012-09-05 11:18
⁄ 工业·编程
⁄ 共 1970字
1. 添加数据:声明控件变量的类别为Control,变量类型为CListBox,变量名为m_ListBox_Content. m_ListBox_Content.AddString(_T("123")); m_ListBox_Content.AddString(_T("汉字")); m_ListBox_Content.AddString(_T("English")); m_ListBox_Content.AddSt...
ListBox, UI界面阅读全文
2012-09-05 11:10
⁄ 工业·编程
⁄ 共 3560字
7种访问对话框控件的方式,他们分别是:
·GetDlgItem()->Get(Set)WindowText() ·Get(Set)DlgItemText() ·Get(Set)DlgItemInt() ·将控件与整型变量相关联() ·将控件与控件变量相关联 ·DendMessage() ·SendDlgItemMessage()
下面以一个对话框上的两个编辑框(IDC_EDIT1和IDC_EDIT2)的求和放到第三个编辑框(IDC_EDIT3)上为例进行说明(他们的ID分别为IDC_EDIT1,IDC_EDIT2和IDC_EDIT3...
UI界面阅读全文
2012-09-01 06:28
⁄ 工业·编程
⁄ 共 2217字
目前,很多基于对话框的应用程序中对话框都是不带框架的,也就是说对话框没有标题栏。众所周知,窗口的移动都是通过鼠标拖动窗口的标题栏来实现的,那么现在应用程序中的对话框没有了标题栏,用户如何移动对话框呢?本实例针对这个问题提出解决的办法。
一、实现方法
解决无标题栏窗口的拖动问题有两种方案,一种方案是使用常规思路来处理鼠标拖拽事件,当窗口获得WM_LBUTTONDOWN(OnLB...
UI界面阅读全文
2012-09-01 06:22
⁄ 工业·编程
⁄ 共 490字
1.添加以下变量:
public:
bool m_bMouseDown;
POINT m_ptStart;
2.在构造函数中添加以下代码
m_bMouseDown=false;
3.响应WM_MOUSEMOVE,WM_LBUTTONDOWN,WM_LBUTTONUP消息.并添加以下代码
OnMouseMove(UINT nFlags,CPoint point)
{
......
if(m_bMouseDown)
{
RECT rect;
GetWindowRect(&rect);
OffsetRect(&rect,point.x-m_ptStart.x,point.y-m_ptStart.y);
MoveWindow(&rect,true);
}
}
OnLButtonDown(UINT nFlags,...
UI界面阅读全文
2012-08-29 15:58
⁄ 工业·编程
⁄ 共 1148字
以CSkinEdit( public CEdit )为例,设置Edit的属性:Multiline, 无Border.
效果图:
1.定义类成员变量:
CBitmap m_bmp;
CBrush m_brush;
在WM_CREATE消息中初始化它们:
int CSkinEdit::OnCreate(LPCREATESTRUCT lpCreateStruct) { if (CEdit::OnCreate(lpCreateStruct) == -1) return -1; // TODO: Add your specialized creation code here HBITMAP h...
UI界面阅读全文
2012-08-29 15:49
⁄ 工业·编程
⁄ 共 700字
1. MFC
优点:VS2008以及VS2010的扩展确实很强大,特别是原生的窗口运行时停靠以及PropertyGrid确实很强大
缺点:默认字体很模糊,无论你对MFC多了解,C++多熟悉,每次写代码时依然要重新熟悉代码,更不用提分析别人写的MFC代码,一个字:乱。
2. WTL
优点:Windows下有个最好的例子:Google Chrome
缺点:缺乏设计器,文档例子很少
3. wxWidgets
优点:虚幻...
UI界面, 分析阅读全文
2012-08-29 15:16
⁄ 工业·编程
⁄ 共 4129字
CMenu类从CObject类派生而来。为什么要使用CMenu类呢?AppWzard不是把菜单做好了吗?在资源编辑器上修改菜单不是很方便吗? 学vc++稍微深入一点好,至少要能搞清楚AppWizard在背后都干了些什么东西。事实上mfc就是用CMenu类来生成菜单的。让我们就从CMenu开始吧。
CMenu生成的菜单有两种:Popup类型和非Popup类型。这两种方法里又可以分成使用资源编辑器生成的菜单资源和不使用这个资源...
UI界面阅读全文
2012-08-29 15:07
⁄ 工业·编程
⁄ 共 2167字
做一个MFC程序的时候碰到一个需求。就是需要根据定制情况,动态生成菜单,菜单的具体结构和信息是之前不知道的(因此不能利用工具构造),点击不同类型的菜单会触发特定的一类事件(需要动态绑定事件)。这种需求实际是蛮不BT的,很多场合下都可能会有,用C#写了个Demo花了不到半个小时。但转到MFC下来写,就费尽周折。其实这个问题代表了在MFC中动态创建资源绑定事件的一般性问题,所以总结一下。
...
UI界面阅读全文
2012-08-28 10:05
⁄ 工业·编程
⁄ 共 1081字
控件一般都是在对话框内的,单文档内嵌入对话框,然后在对话框内添加控件,所以也对话框内的控件。在这个对话框内的控件的父窗口也就是此对话框。理解父窗口是必须的。我们让控件随对话框变化也就是让控件随父窗口变化。
1、一般用两个函数来实现
a.void MoveWindow(int x,int y,int nWidth,int nHeight);
x.y为起始地方的横纵坐标,也就是开始的长,高。是以左上角有(0,0)坐标的 nWidth, nHeight为控件新...
UI界面阅读全文