如何在窗口间传递数据???
是不是申明全局变量????? 问题点数:50、回复次数:5Top
1 楼oyxiaoyu0(小雨仔)回复于 2001-09-30 20:16:19 得分 10
还要包含相关的头文件的例如你要在unit1里调用unit2的变量的话,你要把unit2的头文件包含进来的就是#include unit2.h反之是#include unit1.hTop
2 楼songhtao(三十年孤独)回复于 2001-09-30 20:18:36 得分 20
对,还要互相包含头文件。如调试通过:
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit2.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm2 *Form2;
int a = 256;
//---------------------------------------------------------------------------
__fastcall TForm2::TForm2(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include "Unit1.h"
#include "Unit2.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
extern int a;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
: TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
ShowMessage(a);
}
//---------------------------------------------------------------------------
Top
3 楼wolfboy(峰鸟)回复于 2001-09-30 23:36:45 得分 10
重载Form构造函数
private:
int Fa;
__fastcall TForm1::TForm2(TComponent* Owner,int a)
: TForm(Owner)
{
Fa=a;
}
Top
4 楼zeroliu()回复于 2001-10-04 10:54:47 得分 0
可以用属性,这样更安全一些.Top
5 楼leeshaohua(leeshaohua)回复于 2001-10-04 11:12:39 得分 10
这要看你的窗体是同一进程中还是不同进程中了。
进程间通讯的方法有很多,可以试试WM_COPYDATA(好像是这个吧?我记不清了)
或者共享内存区与管道。
同一进程中的不同窗体,发送消息的话通过WPARAM或LPARAM传个指针过去就行了。当然,要用SendMessageTop




