我程序有一个主对话框为之创建的类为CMainDialog
在主对话框中用一个按钮产生一个子对话矿,为止创建的类为CSubDialog
现定义一个全局变量static int var;
在主对话框中OninitDialog()中有var=0;
启动主对话框后,按按钮
弹出子对话框
在子对话框中
有var=100;
确定后
回到主对话框后
怎么var=0?
这是什么原因啊?请高人指点!!!
在主对话框中用一个按钮产生一个子对话矿,为止创建的类为CSubDialog
现定义一个全局变量static int var;
在主对话框中OninitDialog()中有var=0;
启动主对话框后,按按钮
弹出子对话框
在子对话框中
有var=100;
确定后
回到主对话框后
怎么var=0?
这是什么原因啊?请高人指点!!!
按按钮,弹出子对话框 <-----
在子对话框中
有var=100;
确定后,回到主对话框后 <----
...请给出上面向左键头 <--- 所指的代码实现部分。
请给出所有对var操作的代码,static int var;
全局变量完全可以不这么定义!
static的作用是什么?用debug看看,var是怎么改变的!
不会有问题的!
启动主对话框后,按按钮
弹出子对话框
在子对话框中
有var=100;
确定后
回到主对话框后
//////////////////////
在弹出子对话框的时候有没有关闭主对话框?
我把变量全局变量赋给指针是行的!
BOOL CWaveExtDlg::OnInitDialog()
{
CDialog::OnInitDialog(); // Add "About..." menu item to system menu.
waveformatex.wFormatTag = WAVE_FORMAT_PCM;
waveformatex.nChannels = 1;
waveformatex.nSamplesPerSec = 16000;
waveformatex.nBlockAlign = 2;
waveformatex.wBitsPerSample = 16;
waveformatex.nAvgBytesPerSec = 16000*waveformatex.wBitsPerSample/8;
waveformatex.cbSize = 0; pDialog = new CMyDialog();
if (pDialog==NULL)
{
AfxMessageBox("fail to create the dialog object!");
return FALSE;
}
if (pDialog->Create(IDD_MYDIALOG,this)==NULL)
{
AfxMessageBox("fail to create the Sub-Dialog!");
return FALSE;
}
pDialog->ShowWindow(SW_HIDE);
pDialog->pWaveform =&waveformatex;//就是这样干的,否则不行!!!!
....
}