我在一个对话框上制作了一张表格,代码如下,在oncreat中完成
int CCDDlg::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CDialog::OnCreate(lpCreateStruct) == -1)
return -1;
m_list.Create(
WS_CHILD|WS_VISIBLE|WS_BORDER|LVS_REPORT|LVS_EX_GRIDLINES, CRect(10,50,600,200), this, 1);
DWORD dwStyle = m_list.GetExtendedStyle();
dwStyle |= LVS_EX_FULLROWSELECT; //选中某行使整行高亮(只适用与report风格的listctrl)
dwStyle |= LVS_EX_GRIDLINES; //网格线(只适用与report风格的listctrl)
dwStyle |= LVS_EX_CHECKBOXES; //item前生成checkbox控件
//dwStyle |= LVS_SHOWSELALWAYS ;
m_list.SetExtendedStyle(dwStyle); //设置扩展风格 m_list.InsertColumn( 0, "地点", LVCFMT_CENTER , 100 );//插入列
m_list.InsertColumn( 1, "温度", LVCFMT_CENTER, 100 );
m_list.InsertColumn( 2, "温差", LVCFMT_CENTER, 100 );
m_list.InsertColumn( 3, "楼层", LVCFMT_CENTER, 100 );
m_list.InsertColumn( 4, "楼层图", LVCFMT_CENTER, 100 );
m_list.InsertColumn( 5, "温度曲线", LVCFMT_CENTER, 100 );
GetClientRect(&m_rect);
return 0;
}
现在对话框设置未可变动的,我想问下,如何使得我设置的列表的矩形范围随着对话框的变动而变动呢。
也就是m_list.Create(
WS_CHILD|WS_VISIBLE|WS_BORDER|LVS_REPORT|LVS_EX_GRIDLINES, CRect(10,50,600,200), this, 1);
中的CRect()中的参数要如何设置。希望有类似经验的朋友能提供点思路,小弟在这里叩头了~~
int CCDDlg::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CDialog::OnCreate(lpCreateStruct) == -1)
return -1;
m_list.Create(
WS_CHILD|WS_VISIBLE|WS_BORDER|LVS_REPORT|LVS_EX_GRIDLINES, CRect(10,50,600,200), this, 1);
DWORD dwStyle = m_list.GetExtendedStyle();
dwStyle |= LVS_EX_FULLROWSELECT; //选中某行使整行高亮(只适用与report风格的listctrl)
dwStyle |= LVS_EX_GRIDLINES; //网格线(只适用与report风格的listctrl)
dwStyle |= LVS_EX_CHECKBOXES; //item前生成checkbox控件
//dwStyle |= LVS_SHOWSELALWAYS ;
m_list.SetExtendedStyle(dwStyle); //设置扩展风格 m_list.InsertColumn( 0, "地点", LVCFMT_CENTER , 100 );//插入列
m_list.InsertColumn( 1, "温度", LVCFMT_CENTER, 100 );
m_list.InsertColumn( 2, "温差", LVCFMT_CENTER, 100 );
m_list.InsertColumn( 3, "楼层", LVCFMT_CENTER, 100 );
m_list.InsertColumn( 4, "楼层图", LVCFMT_CENTER, 100 );
m_list.InsertColumn( 5, "温度曲线", LVCFMT_CENTER, 100 );
GetClientRect(&m_rect);
return 0;
}
现在对话框设置未可变动的,我想问下,如何使得我设置的列表的矩形范围随着对话框的变动而变动呢。
也就是m_list.Create(
WS_CHILD|WS_VISIBLE|WS_BORDER|LVS_REPORT|LVS_EX_GRIDLINES, CRect(10,50,600,200), this, 1);
中的CRect()中的参数要如何设置。希望有类似经验的朋友能提供点思路,小弟在这里叩头了~~
解决方案 »
- 急问:我只下载安装了一个xmlsdk,还需要所谓的运行库吗?
- 为什么有的工程正常运行后没有在release或debug文件夹里生成exe文件?
- static void Main_OnClose(HWND hwnd); 为什么还显示在全局变量栏中
- 问个很菜很菜的问题。
- 当CTabCtrl的模板是竖立时,各标签上的文字向左旋转了90度。我希望文字不旋转,该怎样写DrawItem()函数?
- 如何在视图中用右键
- 有一组百分比数据,如何按照该百分比随机抽取这些数据?
- GlobalAlloc内存泄露检测
- 我编了一个拨号软件在win98下运行正常,但在win2000下运行不正常,不知怎样使我的程序在Win98与win2000下都能正常运行,请各位帮帮忙!
- urgent!!!!要做一个类似VC中ICON的点阵编辑器的东西,各位有何高招,请不吝赐教,多谢!
- GetMessage()
- 新开线程问题
m_list.Create(
WS_CHILD|WS_VISIBLE|WS_BORDER|LVS_REPORT|LVS_EX_GRIDLINES, CRect(0,0,0,0), this, 1);响应dlg的WM_SIZE消息,在消息处理函数OnSize()里面
{CRect rc,rListCell;
GetClientRect(rc);//获取整个对话框大小
rListCell = rc;//这个是将整个对话框的大小传给列表框
m.list.movewindow(rlistCell);
}