directshow开发播放器只有声音没有影像,移动两下界面后才会显示出影像,这是为什么?解决方法
directshow开发播放器只有声音没有影像,移动两下界面后才会显示出影像,这是为什么??
我是程序是这样的,一个对话框上有个picture控件,要在控件里显示影像
但运行进总是只有声音没有影像,移动两下界面后才会显示出影像,这是为什么??
大家有没遇到过!!!?????
m_FilterGraph=new CDXGraph();
if(m_FilterGraph-> Create())
{
m_FilterGraph-> RenderFile( "E:\\music\\蓝色风暴.mpg ");
m_FilterGraph-> SetDisplayWindow(m_VideoWindow.GetSafeHwnd());
m_FilterGraph-> SetNotifyWindow(this-> GetSafeHwnd());
m_FilterGraph-> Pause();
}
// m_FilterGraph-> Run();
if(m_FilterGraph)
{
m_FilterGraph-> Run();
if(m_SliderTimer==0)
{
m_SliderTimer=SetTimer(SLIDER_TIMER,100,NULL);
}
}
------解决方案--------------------
这是由于刷新问题引起的,如果去掉picture直接在dialog就不会有问题.当然用了picture也可以解决,我blog说了些方法,可以参考
------解决方案--------------------
在编辑中,把picture的类型改为“边框”(原文字我不清了,就是这一个选项)试试,我就是这么改的。另外若程序需要可以运态改变picture control日的风格(即上面的类型)
我是程序是这样的,一个对话框上有个picture控件,要在控件里显示影像
但运行进总是只有声音没有影像,移动两下界面后才会显示出影像,这是为什么??
大家有没遇到过!!!?????
m_FilterGraph=new CDXGraph();
if(m_FilterGraph-> Create())
{
m_FilterGraph-> RenderFile( "E:\\music\\蓝色风暴.mpg ");
m_FilterGraph-> SetDisplayWindow(m_VideoWindow.GetSafeHwnd());
m_FilterGraph-> SetNotifyWindow(this-> GetSafeHwnd());
m_FilterGraph-> Pause();
}
// m_FilterGraph-> Run();
if(m_FilterGraph)
{
m_FilterGraph-> Run();
if(m_SliderTimer==0)
{
m_SliderTimer=SetTimer(SLIDER_TIMER,100,NULL);
}
}
------解决方案--------------------
这是由于刷新问题引起的,如果去掉picture直接在dialog就不会有问题.当然用了picture也可以解决,我blog说了些方法,可以参考
------解决方案--------------------
在编辑中,把picture的类型改为“边框”(原文字我不清了,就是这一个选项)试试,我就是这么改的。另外若程序需要可以运态改变picture control日的风格(即上面的类型)