1 在interface后面Uses 和在implementation后面Uses 有什么不同?
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,Forms, Dialogs;
type
TForm1 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;implementationUses
Unit2; //在这引用和在前面有什么不同?在前面不能连环引用,在
这却行.
{$R *.dfm}end.2.我要在2个Form中传递数据,互相调用函数,应该怎么做?
我是通过在 Unit1 中引用 Unit2,又在Unit2中引用 Unit1做到的,这样是不是正解?3.Delphi中的全局变量和函数应该在哪里声明?4.Project1.dpr文件有什么用?在这里能干点什么?
program Project1;uses
Forms,
Unit1 in 'Unit1.pas' {Form1};{$R *.res}begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
问题很菜,大家不要笑我.
unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,Forms, Dialogs;
type
TForm1 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;implementationUses
Unit2; //在这引用和在前面有什么不同?在前面不能连环引用,在
这却行.
{$R *.dfm}end.2.我要在2个Form中传递数据,互相调用函数,应该怎么做?
我是通过在 Unit1 中引用 Unit2,又在Unit2中引用 Unit1做到的,这样是不是正解?3.Delphi中的全局变量和函数应该在哪里声明?4.Project1.dpr文件有什么用?在这里能干点什么?
program Project1;uses
Forms,
Unit1 in 'Unit1.pas' {Form1};{$R *.res}begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
问题很菜,大家不要笑我.
2、用法就是这样的
3、在public
{ Public declarations }
这儿声明
4、可在这里选择多个窗体的创建顺序,以及用布幕表单等。
我也是初学,以上是我的理解,如有不对,请高手指教。
2.我一直这样用,但总觉得不对.如果2个Unit都需要用到的话,应该在第3个Unit声明.但我不知道循环引用有什么坏处,而且不知道怎么在第3个Unit声明 类的方法.
3.那个地方是类的方法和属性声明的地方.
2.你新建一个unit3然后在里面写入你的变量,然后在unit1和unit2的单元中引用unit3
3.就是在public里面声明,当然你也可以在implementation前面的var中声明
4.delphi的dpr文件是工程文件,按我的理解就是主程序,将每一个单元创建出来,开始运行
这样就是循环引用了啊,你引用我,我引用你,好象逻辑上说不通,不知道会不会有潜在的问题。
2.同意
3.Public下可以申明
我现在在家,没装Delphi,没法试。
1。作用域不一样,interface声明的变量可以被其他单元或者程序其他部分访问;implementation部分只能被本单元局部访问,也可以在这部分增加一个uses语句访问其他单元,在哪里引用单元几乎是一样的(除非碰到第2点的情况).2。相互调用原则上不是设计上的缺陷,如果的确需要用到单元循环引用,可以把一个uses语句留在interface部分,一个移到implementation中.为了程序的可读性和移植性,不建议这样做.3.全局变量全局函数一般都定义于interface和implementation之间,不能定义在
public
{ Public declarations }
end;
那样要通过类的实例来访问变量,应该定义在implementation前面的var下面.4。该文件是工程文件由系统自动建立,用户一般不需要改动,除非要执行程序初始化例程、显示启动画面或执行其他必须在程序启动时运行的例程。他描叙整个程序的结构及启动代码。通常这是程序的入口。第一个语句用于初始化Application对象,他提供适用于整个程序的数据和代码;第二个语句在内存中创建应用程序的窗体对象,第三个语句为运行应用程序