VC小问题。谢谢各位。

[复制链接]
查看11 | 回复3 | 2010-8-2 15:11:13 | 显示全部楼层 |阅读模式
第一个问题:有两个对话框,A和B,在对话框A里要调用对话框B,该怎么调用?第二个:就是求个音乐播放器的代码。能播放MP3格式的就成。谢谢各位。
第一个问题困惑了我好久。到现在还没有解决。各位给说下呗。

回复

使用道具 举报

千问 | 2010-8-2 15:11:13 | 显示全部楼层
你是指在A中弹出B的话很简单,B b; b.DoModal();这个是模态的,或者在A中定义一个对话框指针,CDialog *b;要弹出的时候用b = new B;b->Create(B的ID,this); b->ShowWindow(SW_SHOW);这个就是非模态的MP3播放实现:看一下MCI,有接口,很方便MCI_OPEN_PARMS mciopenparms; MCI_PLAY_PARMS mciplayparms; mciopenparms.lpstrElementName="D:\\烟花易冷.mp3"; mciopenparms.lpstrDeviceType=NULL; MCIERROR mcierror=mc
回复

使用道具 举报

千问 | 2010-8-2 15:11:13 | 显示全部楼层
曾经我也困惑了很久第一个,呵呵;但是早就搞懂。第1.设B的对话框的类为定义为CSDlg;那么在A的 类对应的Dlg.cpp 在声明处加入 #include“SDlg”;2,是在你下面代码为在A对话框 加上{CSDlg dlgdlg.DoMaDal();}
回复

使用道具 举报

千问 | 2010-8-2 15:11:13 | 显示全部楼层
1. 归根到底就一个类的组合问题,先把B的头文件包括到A中,然后在A类中定义一个B对象,调用即可。其实A的调用也是这样的,在主函数中定义调用,只不过是MFC替用户做了,让人摸不着头脑,连B也不会调用了。2. 自己写解码器的话很复杂,调用第三方的话没多难。找本多媒体编程书看一下,调用一些第三方控件WMPlayer.OCX之类的。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行