社区
C++ Builder
帖子详情
如何调用其它窗体的公共变量?
huygtt
2008-12-17 10:16:51
在我的一个窗体中有一个按钮,点击这个按钮就会进入到另外一个打印界面的窗体,我现在想对上一个窗体中的数据进行打印,我利用了QReport打印功能,然而,我在打印界面的窗体中需要调用上一个窗体的一个变量,我所使用的方法是:AnsiString num=form1->Edit1->Text;调用出来的结果这个编辑框中的最初的数据,也就是Edit1;但是Edit1中的数据已经发生变化了。
请问是不是只可以调用最初的状态的数据?
...全文
146
10
打赏
收藏
如何调用其它窗体的公共变量?
在我的一个窗体中有一个按钮,点击这个按钮就会进入到另外一个打印界面的窗体,我现在想对上一个窗体中的数据进行打印,我利用了QReport打印功能,然而,我在打印界面的窗体中需要调用上一个窗体的一个变量,我所使用的方法是:AnsiString num=form1->Edit1->Text;调用出来的结果这个编辑框中的最初的数据,也就是Edit1;但是Edit1中的数据已经发生变化了。 请问是不是只可以调用最初的状态的数据?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
littlefish0101
2009-01-10
打赏
举报
回复
在主窗体中定义全局变量:
AnsiString num;
在需要调用的窗体上定义
extern AnsiString num;
在Edit的change事件中:
x=this->Edit3->Text ;
估计就可以实现
utin431
2009-01-10
打赏
举报
回复
在上一窗体(Form1)的头文件public:部分定义一个变量form1num,保存Edit的值,在要使用的窗体,用num = Form1->form1num;获取参数的值。
swanblue
2009-01-09
打赏
举报
回复
放在变量里,取变量的值。还不行的话,把程序重新build一下试试。
sunyuchuan86
2008-12-18
打赏
举报
回复
如果你新的窗体弹出之前,第一个窗体没有关闭,你可以把你想保存的值保存到一个静态变量中,然后你再去取变量的值。可能你弹出新窗体的时候,旧的窗体就重画了。那它上面的一些控件可能又重新初始化了。所以,还是建议你用一个静态的全局变量去存储要调用的值。
Jim@luckeeinc.com
2008-12-18
打赏
举报
回复
[Quote=引用 2 楼 huygtt 的回复:]
我就是这样做的,如果Edit1中最初的数据为123456,那在后面这个编辑框中的数据不管变为多少,调用出来的不是123456就是一个空白,不会得到变化后的数据。
[/Quote]
如果要等到變化后的數據就照你寫的AnsiString num=form1->Edit1->Text;不就可以了
如果要等到最初的數據 那就先定義個一個String變量,先把最初的值存起來,然後就不要動那個變量了,要用的時候再取
huygtt
2008-12-18
打赏
举报
回复
你们说的方法我都试过了,但是还是一样不行,还是一个空白,我再想想其它方法
jingzhongrong
2008-12-17
打赏
举报
回复
窗体A调用窗体B
重载一个窗体A的构造函数把窗体B的指针传到窗体A中保存起来
TripH0101
2008-12-17
打赏
举报
回复
加个这个:
void __fastcall TForm1::Edit3Change(TObject *Sender)
{
x=this->Edit3->Text ;
}
再在下一个窗口中调用x
huygtt
2008-12-17
打赏
举报
回复
我就是这样做的,如果Edit1中最初的数据为123456,那在后面这个编辑框中的数据不管变为多少,调用出来的不是123456就是一个空白,不会得到变化后的数据。
TripH0101
2008-12-17
打赏
举报
回复
在上一个窗口(如Form1)的头文件中,在public 下声明一个变量x,当前窗口引用这个头文件,引用变量 :Form1->x
关于在不知道具体实例化哪个
窗体
时
调用
该
窗体
公共
变量
的方法
private Form NewForm(string formName) { switch (formName) { case "rechargePayManage": return new rechargePayManage();...
谈谈
窗体
之间的数据交互
窗体
之间的交互,主要是对
窗体
之间的成员
变量
进行相互
调用
。
vb.net 教程 3-2
窗体
编程之
窗体
5
版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。 还有一种传递值的方法: 在Form2中定义一个
公共
(Public)
变量
,那么我们在Form1中定义(实例化)了个Form2后,就可以使用这个
变量
了。 Form2中: Public passedParameter As String Private Sub btnParameter_Click(sender As Object, e As EventArgs) Handles bt...
(Windows Form)两个打开的
窗体
之间相互
调用
。
看完之后你会发现很简单哦: 假设有两个
窗体
类 Form1(public) and Form2 在Form1中声明public 、static 、Form1类型的
变量
pform1 ,代码: public static Form1 pform1 = null ; 然后再在Form_Load事件里添加 pform1 = t
c#跨
窗体
传送数据
在此示例中,第二个
窗体
中通过创建第一个
窗体
的实例来
调用
其
公共
方法,将需要传输的数据传输过去。第一个
窗体
中可以通过
公共
变量
来访问从第二个
窗体
传输过来的数据。3.在第二个
窗体
中创建第一个
窗体
的实例,并
调用
该
窗体
中的
公共
方法将需要传输的数据传送过去。2.在第一个
窗体
中定义一个
公共
的方法,该方法可以接收从第二个
窗体
传输过来的数据。4.在第一个
窗体
中可以通过该
公共
变量
来访问从第二个
窗体
传输过来的数据。1.在两个
窗体
中都定义一个
公共
的
变量
,以便在这两个
窗体
之间共享数据。
C++ Builder
13,872
社区成员
102,696
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章