CListBox
该控件应用很简单,初始化直接一个函数搞定,就是有一些风格问题什么的需要自己琢磨下
m_listadvanced.ShowWindow(SW_SHOW); //别忘了在创建完成地方设置隐藏
//m_listadvanced.SetItemHeight(0,100);
m_listadvanced.AddString(_T("TextFile"));
m_listadvanced.AddString(_T("Picture"));
m_listadvanced.AddString(_T("Video"));
m_listadvanced.AddString(_T("GIF"));
m_listadvanced.AddString(_T("RTF"));
m_listadvanced.SetTopIndex(0);
下面介绍下选择具体项目事件
int index=0;
index=m_listadvanced.GetCurSel();
m_listadvanced.GetText(index,info); //获取到对应字符串
这样我们就获取了点击时候所对应的索引并得到内容
如果需要重置内容也是一个函数搞定
m_listadvanced.ResetContent();
m_listadvanced.SetCurSel(index);
CSliderCtrl
滑动条控件是一个很奇怪的控件,没有对应的移动消息响应函数,通过HResult的方法可以自行百度,这里我用了个较为容易理解的方法实现了进度条事件
首先是初始化
m_bright.SetRange(0,100);
m_bright.SetLineSize(5); //设置滑动以5为间隔
posit=m_bright.GetPos(); //通过获取滑动条位置初始化
m_bri=&m_bright;
我通过新建一个现场来不停循环比对 posit 函数 与 获取的 GetPos 来判定是否需要响应更改
DWORD WINAPI func4 (LPVOID lpParam)
{
while(1)
{
int degree=m_bri->GetPos();
if(posit!=degree) //如若滑动条发生改变则进行响应
{
char *ip=new char [20]; //用来接收列表处获取的IP与板卡ID信息
char *id=new char [20];
int col=0;
col = m_dlist->GetSelectionMark() ; //先点击列表事件检测
id = trans2c(&m_dlist->GetItemText(col, 0));
ip = trans2c(&m_dlist->GetItemText(col, 1));
DLL_Net_AdjustBrightness(ip,31299,degree,0);
posit=degree; //将新的滑动条参数赋予 posit
}
}
return 0;
}