关于MFC中Slider(滑动)控件的使用 10
前提:已经在对话框中放置一个slider控件,并为其定义一个变量m_Slider,类型为CSliderCtrl。对控件无其他设置。问题描述:1.为了使滑动条带刻度,在对话...
前提:
已经在对话框中放置一个slider控件,并为其定义一个变量m_Slider,类型为CSliderCtrl。对控件无其他设置。
问题描述:
1.为了使滑动条带刻度, 在对话框的初始化中,添加
m_Slider.SetRange(0,100);
m_Slider.SetTicFreq(10);
编译执行后,并不出现刻度,随后又添加函数
for (int i=10;i<=90)
{
SetTic(i);
i+=10;
}
也不出现刻度。那怎么才会出现预期的按照设定的刻度频度显示刻度呢?
2. 为了实现滑动条的美化,在对话框的OnCtlColor中对其进行颜色设置,只能对其底色进行设置,不能设置中间条的颜色,如图1所示。请问怎么才能设置滑动条的颜色呢,包括中间条的颜色?
3. 滑动条在对话框初始化启动的时候是没问题的,但是鼠标一旦选中该滑动条,就会在滑动条框的周围出现一个虚线框,如图2所示,如何才能不显示这个虚线框呢?
已经采用扩展类的方法解决了! 展开
已经在对话框中放置一个slider控件,并为其定义一个变量m_Slider,类型为CSliderCtrl。对控件无其他设置。
问题描述:
1.为了使滑动条带刻度, 在对话框的初始化中,添加
m_Slider.SetRange(0,100);
m_Slider.SetTicFreq(10);
编译执行后,并不出现刻度,随后又添加函数
for (int i=10;i<=90)
{
SetTic(i);
i+=10;
}
也不出现刻度。那怎么才会出现预期的按照设定的刻度频度显示刻度呢?
2. 为了实现滑动条的美化,在对话框的OnCtlColor中对其进行颜色设置,只能对其底色进行设置,不能设置中间条的颜色,如图1所示。请问怎么才能设置滑动条的颜色呢,包括中间条的颜色?
3. 滑动条在对话框初始化启动的时候是没问题的,但是鼠标一旦选中该滑动条,就会在滑动条框的周围出现一个虚线框,如图2所示,如何才能不显示这个虚线框呢?
已经采用扩展类的方法解决了! 展开
1个回答
展开全部
可能没有关联.
如果在CPP中没有找到:DDX_Control(pDX, ID_XXXXXX, m_Slider);则控件是不会动的.
关联办法:
在控件上右键, 然后选择添加变量, 当然, 后面的变量名称为m_Slider, 确定.
运行后即可.
为什么需要关联呢?
因为在一个界面中, 可能有很多的相同的控件. 此时, 控件变量需要有一个对应关系. 变量A对应控件A时, 控件B不会受影响.
或者说: 对于计算机软件而言, 不可以存在多义性, 变量对应一个控件, 否则, 控件将不会响应变量的变化.
如果在CPP中没有找到:DDX_Control(pDX, ID_XXXXXX, m_Slider);则控件是不会动的.
关联办法:
在控件上右键, 然后选择添加变量, 当然, 后面的变量名称为m_Slider, 确定.
运行后即可.
为什么需要关联呢?
因为在一个界面中, 可能有很多的相同的控件. 此时, 控件变量需要有一个对应关系. 变量A对应控件A时, 控件B不会受影响.
或者说: 对于计算机软件而言, 不可以存在多义性, 变量对应一个控件, 否则, 控件将不会响应变量的变化.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询