首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ Builder >

怎么访问另一个控件的指针有源码

2013-03-20 
如何访问另一个控件的指针有源码本帖最后由 laohei0304 于 2013-03-13 11:27:22 编辑void __fastcall TFor

如何访问另一个控件的指针有源码
本帖最后由 laohei0304 于 2013-03-13 11:27:22 编辑

void __fastcall TFormMaster::Button1Click(TObject *Sender)
{
//----------------------------------------------
//-打开文件复制内容至recvbuf[1024*1024]
//指向文件内容指针char*  pfile
//----------------------------------------------
TStringList *Str=new TStringList();
AnsiString S;  char recvbuf[1024*1024];

if (OpenDialog1->Execute())
{
  Str->LoadFromFile(OpenDialog1->FileName);
  S=AnsiString(Str->Text);
}
   memset(recvbuf,0x00,sizeof(recvbuf));
   strcpy(recvbuf,S.c_str());
   char* pfile = recvbuf;


Label1Click(Sender);

}
void __fastcall TFormMaster::Label1Click(TObject *Sender)
{
//==================================================================================
//-将数据流存入结构体
//==================================================================================
memcpy(Buff16, pfile, 4);    //DWORDType;记录类型
Record.Tags.Type = atol(Buff16);    //Record.Tags.Type是自己定义的结构
}

这Label1里面pfile如何访问Button1的pfile所指内容。
上面的源码是不能通过编译的。这里该如何处理。
[解决办法]
pfile定义成类成员变量或全局变量
类成员变量
class TForm1 : public TForm
{
__published:// IDE-managed Components
private:// User declarations
  char* pfile;
public:// User declarations
        __fastcall TForm1(TComponent* Owner);
};

全局变量 在这个文件开头 
  char* pfile;
[解决办法]
按你的写法,pfile是个Button1Click中的本地变量,在Label1Click中未定义
pfile要定义成成员变量,在Label1Click才能访问到

热点排行