1、我下载了一个自绘Silder源码,其中IDC_SLD_AUDIO是Silder控件,它与m_silder变量关联DX_Control(pDX, IDC_SLIDER_SHARE2, m_silder);这里的m_silder是CBitSlider类。
2、现在我想利用这个Silder控件来控制音量,又要与控制音量的CMixerFader的类进行关联。 为此我是这样处理的:
在头文件中:
CMixerFader m_mainVolume;
在cpp文件中利用下面的方法调用:
m_mainVolume.SubclassDlgItem( IDC_SLD_AUDIO, this);
m_mainVolume.Init( MIXERLINE_COMPONENTTYPE_DST_SPEAKERS,
NO_SOURCE,
MIXERCONTROL_CONTROLTYPE_VOLUME,
CMixerFader::MAIN );
但是运行程序崩溃。请问:同一控件不同能同时关联两个不同的变量吗?怎么解决这个问题?谢谢!!
2、现在我想利用这个Silder控件来控制音量,又要与控制音量的CMixerFader的类进行关联。 为此我是这样处理的:
在头文件中:
CMixerFader m_mainVolume;
在cpp文件中利用下面的方法调用:
m_mainVolume.SubclassDlgItem( IDC_SLD_AUDIO, this);
m_mainVolume.Init( MIXERLINE_COMPONENTTYPE_DST_SPEAKERS,
NO_SOURCE,
MIXERCONTROL_CONTROLTYPE_VOLUME,
CMixerFader::MAIN );
但是运行程序崩溃。请问:同一控件不同能同时关联两个不同的变量吗?怎么解决这个问题?谢谢!!
解决方案 »
- MFC控件ListBox中如何将某一列像密码列进行加密显示
- 显示曲线坐标问题
- 请教: MFC单文档画直线,出现的问题!!!!!
- 关于CGridCtrl中插入Check Box列
- 重装系统后出现的编译问题
- 一个简单问题,在线等待!
- wise for windows install, wise installmaster, Wise Installation System.有什么区别?
- 一个发送消息的问题
- 在工具栏(ToolBar)上添加ComboBox控件,为何每次在下拉列表中选择时,都会自动的选中工具栏上的一个按钮?
- c++ 调用 c#com 函数参数 为类
- vc如何释放从指针p开始,指定大小的内存
- MFC 怎样实现折线图功能
一个Control类型,一个Value类型。
其他情况就不可以了
这样行不行?把CSlider控件的变量值直接传递给m_mainVolume不知行不行?代码如下:
BOOL CConferenceDialog::OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult)
{
CString lpszValue;
NMHDR *pParam = reinterpret_cast <NMHDR*>(lParam);
if(pParam->hwndFrom == m_slider.m_hWnd)
{
int value = m_slider.GetPos();
m_mainVolume.SetPos(value);
lpszValue.Format("%d",value); }
return CDialog::OnNotify(wParam, lParam, pResult);
}
然后再这样控制音量:CMixerFader m_mainVolume;
在cpp文件中利用下面的方法调用:
m_mainVolume.SubclassDlgItem( IDC_SLD_AUDIO, this);
m_mainVolume.Init( MIXERLINE_COMPONENTTYPE_DST_SPEAKERS,
NO_SOURCE,
MIXERCONTROL_CONTROLTYPE_VOLUME,
CMixerFader::MAIN );