列表框
修改
void CMFCApplication2Dlg::OnBnClickedButton2()
{
// TODO: 在此添加控件通知处理程序代码
//获取编辑区内容
UpdateData(TRUE);
if (m_str.GetLength()==0)
{
MessageBox(TEXT("内容不能为空"));
return;
}
//给列表添加内容
m_listBox.AddString(m_str);
m_str.Empty();
//把内容更新到编辑区
UpdateData(FALSE);
}
void CMFCApplication2Dlg::OnBnClickedButton3()
{
// TODO: 在此添加控件通知处理程序代码
//获取选中行
int i = m_listBox.GetCurSel();
//删除选中行
m_listBox.DeleteString(i);
}
void CMFCApplication2Dlg::OnLbnSelchangeList1()
{
// TODO: 在此添加控件通知处理程序代码
//获取选中行
int i = m_listBox.GetCurSel();
//获得指定内容
m_listBox.GetText(i, m_str);
//显示
UpdateData(FALSE);
}
void CMFCApplication2Dlg::OnBnClickedButton4()
{
// TODO: 在此添加控件通知处理程序代码
UpdateData(TRUE);
if (m_str.GetLength() == 0)
{
MessageBox(TEXT("内容不能为空..."));
return;
}
//获得选中行
int i = m_listBox.GetCurSel();
//删除选中行
m_listBox.DeleteString(i);
//选中位置插入新的内容
m_listBox.InsertString(i, m_str);
//将编辑框设置为空
m_str = TEXT("");
UpdateData(FALSE);
}
组合框(下拉框)用于登陆界面的制作
可执行代码:
m_combo1.SetCurSel(1);
//显示选项
CString str;
m_combo1.GetLBText(0, str);
MessageBox(str);
//添加选项
m_combo1.AddString(TEXT("奶茶"));
滑块
添加滚动条和编辑框,点击滚动条属性,在WM_HSCROLL中添加处理事件
为编辑框添加变量
为滚动条添加变量
可执行代码:
//滑块处理事件
void CMFCApplication2Dlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
if (pScrollBar == &m_sb)
{
int tempos;
switch (nSBCode) //判断滚动条的哪一部分
{
case SB_THUMBPOSITION: //滑块位置
{
m_sb.SetScrollPos(nPos);
m_pos = nPos;
UpdateData(FALSE);
break;
}
case SB_LINELEFT: //向左的箭头
{
//获取滑块的位置
tempos = m_sb.GetScrollPos();
tempos = tempos - 1;
if (tempos < 0)
{
tempos = 0;
}
m_sb.SetScrollPos(tempos);
m_pos = tempos;
//显示
UpdateData(FALSE);
}
break;
case SB_LINERIGHT: //向右的箭头
{
//获取滑块的位置
tempos = m_sb.GetScrollPos();
tempos = tempos + 1;
if (tempos > 100)
{
tempos = 100;
}
m_sb.SetScrollPos(tempos);
m_pos = tempos;
//显示
UpdateData(FALSE);
}
break;
case SB_PAGELEFT: //滑块和箭头之间左边
{
//获取滑块的位置
tempos = m_sb.GetScrollPos();
tempos = tempos - 10;
if (tempos <0)
{
tempos = 0;
}
m_sb.SetScrollPos(tempos);
m_pos = tempos;
//显示
UpdateData(FALSE);
}
break;
case SB_PAGERIGHT: //滑块和箭头之间右边
{
//获取滑块的位置
tempos = m_sb.GetScrollPos();
tempos = tempos + 10;
if (tempos > 100)
{
tempos = 100;
}
m_sb.SetScrollPos(tempos);
m_pos = tempos;
//显示
UpdateData(FALSE);
}
break;
default:
break;
}
}
CDialogEx::OnHScroll(nSBCode, nPos, pScrollBar);
}
旋转控件
添加控件
Ctrl+D,设置控件顺序旋转控件要比编辑框控件大1,且编辑框控件不能为0
设置旋转控件的属性
列表控件
//列表框
//设置风格样式
//m_list.GetExtendedStyle() 获得当前样式
//LVS_EX_GRIDLINES 网格样式
//LVS_EX_FULLROWSELECT 全选中
m_list.SetExtendedStyle(m_list.GetExtendedStyle() | LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT);
//插入标题
CString head[] = { TEXT("姓名"),TEXT("年龄"),TEXT("性别") };
//插入列
m_list.InsertColumn(0, head[0], LVCFMT_LEFT, 50);
m_list.InsertColumn(1, head[1], LVCFMT_LEFT, 50);
m_list.InsertColumn(2, head[2], LVCFMT_LEFT, 50);
for (int i = 0; i < 10; i++)
{
CString str;
str.Format(TEXT("mike%d"), i + 1);
//确定行
m_list.InsertItem(i, str);
//设置列
int j = 0;
j++;
m_list.SetItemText(i, j, TEXT("19"));
j++;
m_list.SetItemText(i, j, TEXT("男"));
}