unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TForm1 = class(TForm)
GroupBox1: TGroupBox;
Edit1: TEdit;
Edit2: TEdit;
Memo1: TMemo;
Button1: TButton;
Label1: TLabel;
Label2: TLabel;
GroupBox2: TGroupBox;
Edit3: TEdit;
Button2: TButton;
Edit4: TEdit;
Label3: TLabel;
Label4: TLabel;
ListBox1: TListBox;
Button3: TButton;
Label5: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation
type
TTdate = class
private
year:integer;
public
month,day,days:integer;
function getYear:integer;
procedure Setyear(A:integer);
constructor create(year:integer);
destructor destroy;override;//??
procedure showdays;
function isLeapyear(year:integer):boolean;
function Showdate():tdatetime;
end;function TTdate.getYear:integer;
begin
result:=year;
end;procedure TTdate.Setyear(A:integer);
begin
year:=A;
end;constructor TTdate.create(year:integer);
begin
form1.ListBox1.Items.Add('调用构造函数');
year:=year;
end;destructor TTdate.destroy;
begin
form1.ListBox1.Items.Add('类对象被删除');
end;procedure TTdate.showdays;
var
i,days:integer;
begin
days:=0;
if (year mod 4=0) and (year mod 100<>0) then
begin
for i:=1 to month-1 do
begin
case i of
4,6,9,11: days:=days+30;
2: days:=days+29;
else
days:=days+30;
end;
end;
end
else
begin
for i:=1 to month-1 do
begin
case i of
4,6,9,11: days:=days+30;
2: days:=days+28;
else
days:=days+30;
end;
end;
end;
days:=days+day;
showmessage('第'+inttostr(days)+'天');
end;function TTdate.isLeapyear(year:integer):boolean;
begin
if (year mod 4=0) and (year mod 100<>0) then
result:=true
else
result:=false;
end;
function TTdate.Showdate():Tdatetime;
begin
form1.Label5.caption := FormatDateTime('yyyy-mm-dd hh:mm:ss', Now);
end;function jieceng(value:integer):integer;
var
i,sum:integer;
begin
sum:=0;
for i:=1 to value do
sum:=sum+i*i;
result:=sum;
end;{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
i, j, xiaxian, shangxian, count: integer;
begin
memo1.Clear;
count := 0;
xiaxian := strtoint(Edit1.Text);
shangxian := strtoint(Edit2.Text);
for i := xiaxian to shangxian do
begin
for j := 2 to trunc(sqrt(i)) do
if (i mod j = 0) then
break;
if j>trunc(sqrt(i)) then
begin
memo1.Lines.Add(inttostr(i));
count := count + 1;
end;
end;
Memo1.Lines.Add('总共'+inttostr(count)+'个素数');
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
edit4.Text:=inttostr(jieceng(strtoint(edit3.text)));
end;procedure TForm1.Button3Click(Sender: TObject);
var
inter:TTdate;
begin
inter:=TTdate.Create;
inter.month:=11;
inter.day:=22;
inter.setyear(1999);
inter.Showdate;
inter.destroy;
end;end.初学delphi,请高手帮我看看类定义的那部分就行了,哪里出错了
[Error] Unit1.pas(164): Not enough actual parameters
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TForm1 = class(TForm)
GroupBox1: TGroupBox;
Edit1: TEdit;
Edit2: TEdit;
Memo1: TMemo;
Button1: TButton;
Label1: TLabel;
Label2: TLabel;
GroupBox2: TGroupBox;
Edit3: TEdit;
Button2: TButton;
Edit4: TEdit;
Label3: TLabel;
Label4: TLabel;
ListBox1: TListBox;
Button3: TButton;
Label5: TLabel;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation
type
TTdate = class
private
year:integer;
public
month,day,days:integer;
function getYear:integer;
procedure Setyear(A:integer);
constructor create(year:integer);
destructor destroy;override;//??
procedure showdays;
function isLeapyear(year:integer):boolean;
function Showdate():tdatetime;
end;function TTdate.getYear:integer;
begin
result:=year;
end;procedure TTdate.Setyear(A:integer);
begin
year:=A;
end;constructor TTdate.create(year:integer);
begin
form1.ListBox1.Items.Add('调用构造函数');
year:=year;
end;destructor TTdate.destroy;
begin
form1.ListBox1.Items.Add('类对象被删除');
end;procedure TTdate.showdays;
var
i,days:integer;
begin
days:=0;
if (year mod 4=0) and (year mod 100<>0) then
begin
for i:=1 to month-1 do
begin
case i of
4,6,9,11: days:=days+30;
2: days:=days+29;
else
days:=days+30;
end;
end;
end
else
begin
for i:=1 to month-1 do
begin
case i of
4,6,9,11: days:=days+30;
2: days:=days+28;
else
days:=days+30;
end;
end;
end;
days:=days+day;
showmessage('第'+inttostr(days)+'天');
end;function TTdate.isLeapyear(year:integer):boolean;
begin
if (year mod 4=0) and (year mod 100<>0) then
result:=true
else
result:=false;
end;
function TTdate.Showdate():Tdatetime;
begin
form1.Label5.caption := FormatDateTime('yyyy-mm-dd hh:mm:ss', Now);
end;function jieceng(value:integer):integer;
var
i,sum:integer;
begin
sum:=0;
for i:=1 to value do
sum:=sum+i*i;
result:=sum;
end;{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
i, j, xiaxian, shangxian, count: integer;
begin
memo1.Clear;
count := 0;
xiaxian := strtoint(Edit1.Text);
shangxian := strtoint(Edit2.Text);
for i := xiaxian to shangxian do
begin
for j := 2 to trunc(sqrt(i)) do
if (i mod j = 0) then
break;
if j>trunc(sqrt(i)) then
begin
memo1.Lines.Add(inttostr(i));
count := count + 1;
end;
end;
Memo1.Lines.Add('总共'+inttostr(count)+'个素数');
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
edit4.Text:=inttostr(jieceng(strtoint(edit3.text)));
end;procedure TForm1.Button3Click(Sender: TObject);
var
inter:TTdate;
begin
inter:=TTdate.Create;
inter.month:=11;
inter.day:=22;
inter.setyear(1999);
inter.Showdate;
inter.destroy;
end;end.初学delphi,请高手帮我看看类定义的那部分就行了,哪里出错了
[Error] Unit1.pas(164): Not enough actual parameters
解决方案 »
- InstallShield小问题?
- 为什么用QuickRep做的报表在EPSOONEPSON STYLUS COLOR 460中打印不出来啊?
- DELPHI有奖问签!
- 1.锁定计算机问题。2改变背景色。。。。。
- Canvas上如何使用不同颜色勾画字体轮廓?急。。。
- 高分提问一个小问题
- 哪位老大對ComboBox組件比較熟?????幫我看看
- 90分问题!!!有100条Update SQL语句,怎样用10个线程保存到数据库中?如果解决问题,另有高分相送,决不食言!!!
- 急!进去再说
- 使用BDE Administrator时的问题求助于大虾们?急!!!
- 求高手帮忙 关于delphi 设计的倒计时小程序问题
- 2009学习delphi的前景
改成
inter:=TTdate.Create(Self);
begin
form1.ListBox1.Items.Add('调用构造函数'); // <-- 这里调用form1不好
year:=year;
end;