C++Builder事件处理函数有个参数是引用类型,我想手工调用这个函数,怎么传参数?
事件处理函数有个参数是引用类型,我想手工调用这个函数,怎么传参数?
//点击控制按钮
void __fastcall TForm1::MediaPlayer1Click(TObject *Sender, TMPBtnType Button, bool &DoDefault)
{
DoDefault=true; //做按钮预设动作
if(Button==TMPBtnType::btPlay) //如果是播放按钮
this->Timer1->Enabled=true;
}
我这样调用:
bool DoDefault;
MediaPlayer1Click(Sender,TMPBtnType::btPlay,DoDefault); //编译出错
//MediaPlayer1Click(Sender,TMPBtnType::btPlay,true); //编译出错
应该怎么传参数?
这个引用参数引用了上层函数某个内部变量,需要设置值,如果能手工调用该函数的话也会使那个内部变量无法获取值了吧?
因为播放的时候有个额外的定时器操作,我开始时想用手工调用该函数,编译不通过,只好每次Play后加一句操作定时器的语句。
但这样调用函数为啥不行?
//点击控制按钮
void __fastcall TForm1::MediaPlayer1Click(TObject *Sender, TMPBtnType Button, bool &DoDefault)
{
DoDefault=true; //做按钮预设动作
if(Button==TMPBtnType::btPlay) //如果是播放按钮
this->Timer1->Enabled=true;
}
我这样调用:
bool DoDefault;
MediaPlayer1Click(Sender,TMPBtnType::btPlay,DoDefault); //编译出错
//MediaPlayer1Click(Sender,TMPBtnType::btPlay,true); //编译出错
应该怎么传参数?
这个引用参数引用了上层函数某个内部变量,需要设置值,如果能手工调用该函数的话也会使那个内部变量无法获取值了吧?
因为播放的时候有个额外的定时器操作,我开始时想用手工调用该函数,编译不通过,只好每次Play后加一句操作定时器的语句。
但这样调用函数为啥不行?
...全文
相关推荐
C++ Builder实现调用打印机打印图片
C++ Builder实现调用打印机打印图片
C++builder 调用C# DLL
这是一个C++builder 调用C# DLL的标准范例,通过该范例的学习可以掌握BCB调用C#的DLL的方法。具有很强的学习和借鉴意义。
C++Builder建立及调用DLL
DLL简称动态链接库,是Windows中程序的重要组成部分。想象一下,一个程序需要多人共同完成开发,怎么个共同法?这时我们就要考虑把程 序分为好几个模块,团队每一个成员开发一个模块。问题来了:如何将模块组合并成一个完整系统?还有,我们开发的软件需要不断升级,如 何升级?
C++ Builder 调用JavaScript的例子
C++ Builder 调用JavaScript的例子
C++ Builder调用Delphi的pas文件实例
C++ Builder调用Delphi的pas文件实例


