我在implementation 前面定义了一个全局变量 theSql: string

kenpa 2003-12-17 06:41:23
我在implementation 前面定义了一个全局变量 theSql: string, 然后在FormCreate中给这个变量赋了个值,

但是, 我在这个FORM上加了个按钮,在这个按钮事件中,取这个 theSql 的值, 却取的是空置, 这是什么原因. formCreate 中赋值是成功的了
...全文
45 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
tglong 2003-12-22
  • 打赏
  • 举报
回复
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
gStr : String;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
gstr := 'gStr';
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
showmessage(gStr);
end;

end.
没问题呀
zhuangbx220 2003-12-22
  • 打赏
  • 举报
回复
http://expert.csdn.net/Expert/TopicView1.asp?id=2588116

我的问题也是这样,结果变量值没有了,,,所有代码都在上面.
sixgj 2003-12-17
  • 打赏
  • 举报
回复
很正常啊。显示就是为002。你把你的全部代码下出来看一下:
sixgj 2003-12-17
  • 打赏
  • 举报
回复
var
Form1: TForm1;
theSql: string;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
theSql:='002';
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
showmessage(thesql);
end;
sixgj 2003-12-17
  • 打赏
  • 举报
回复
哈哈:要这样就对了。showmessage('theSql');
kenpa 2003-12-17
  • 打赏
  • 举报
回复
是的, 我就是这样的, 我在 TForm1.Button1Click(Sender: TObject);中

是 showmessage(theSql); 结果是空

johnshen0211 2003-12-17
  • 打赏
  • 举报
回复
应该没错误,我已经试过了
rlongriver 2003-12-17
  • 打赏
  • 举报
回复
你再仔细查查,写出代码来看看
sixgj 2003-12-17
  • 打赏
  • 举报
回复
从你说的中看不出那出了问题。


var
Form1: TForm1;
theSql: string;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
theSql:='002';
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
label1.Caption:=theSql;
end;

end.

2,507

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧