为了账号安全,请及时绑定邮箱和手机立即绑定

为什么TNT2不能被赋值?代码如下:

为什么TNT2不能被赋值?代码如下:

C++
白衣染霜花 2023-04-23 19:14:51
我创建了一个非模态对话框(类名为calTNT),里面有一个输入框A(变量为TNT1)。主窗口(类名为“C测试Dlg”)有一个输入框B(变量为TNT2)。在按下非模式对话框按钮1后我想将,TNT1的值赋给TNT2,,同时关闭非模式对话框。代码如下:void calTNT::OnBnClickedOk2(){UpdateData(true);C测试Dlg dlg;dlg.TNT2=TNT1;CDialogEx::OnOK();}
查看完整描述

2 回答

?
侃侃尔雅

TA贡献1801条经验 获得超15个赞

刚又想到个idea 再来第三种方法

void CTestDlg::OnButton3() 

{

// TODO: Add your control notification handler code here

static calTNT dlg;//想想static int x = 1;是神马语法现象

static int flag = 0;

if(!flag)

{

dlg.Create(IDD_DIALOG1);

flag = 1;

}

dlg.ShowWindow(SW_SHOW);

}


模特、非模态两种方法都给你写一个程序里头了 vc6 mfc 对话框工程

主对话框类名CTestDlg 弹出的对话框名 calTNT

主对话框上添加一个编辑框 两个按钮

编辑框关联CString类型变量m_TNT2

弹出对话框类 添加一个编辑框 关联变量CString类型m_TNT1

给弹出对话框的OK按钮添加响应函数

void calTNT::OnOK() 

{

// TODO: Add extra validation here

UpdateData(TRUE);

((CTestDlg *)AfxGetMainWnd())->m_TNT2 = m_TNT1;

AfxGetMainWnd()->UpdateData(FALSE);

CDialog::OnOK();

}

主对话框类 的头文件和源文件 都加上 弹出对话框类的头文件

先来模态的,主对话框的button1 

void CTestDlg::OnButton1() 

{

// TODO: Add your control notification handler code here

calTNT dlg;

dlg.DoModal();

}

很简单


再来看非模态 给主对话框类添加头文件类声明中添加成员指针变量 和析构函数声明

public:

calTNT *p;

CTestDlg(CWnd* pParent = NULL); // standard constructor

~CTestDlg();

主对话框类源文件 构造函数中将此指针 初始化为NULL

CTestDlg::CTestDlg(CWnd* pParent /*=NULL*/)

: CDialog(CTestDlg::IDD, pParent)

{

//{{AFX_DATA_INIT(CTestDlg)

m_TNT2 = _T("");

//}}AFX_DATA_INIT

// Note that LoadIcon does not require a subsequent DestroyIcon in Win32

m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);

p = NULL;

}

添加析构函数实现

CTestDlg::~CTestDlg()

{

if(p)

{

delete p;

}

}

最后按钮2 建立非模态

void CTestDlg::OnButton2() 

{

// TODO: Add your control notification handler code here

if(!p)

{

p = new calTNT();

p->Create(IDD_DIALOG1);

}

p->ShowWindow(SW_SHOW);

}

查看完整回答
反对 回复 2023-04-26
?
一只名叫tom的猫

TA贡献1906条经验 获得超2个赞

那有什么意义啊
关闭了,可以说就是销毁了。那么所赋值也没了

你可以试试构造传参,直接在构造里传递过去啊
C测试Dlg dlg(TNT1);

查看完整回答
反对 回复 2023-04-26
  • 2 回答
  • 0 关注
  • 110 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信