为什么我收到此错误,我用listview替换了一个stringgrid,然后我将其设置为viewstyle vsreport但是我得到一个错误(预期'='但是'('找到)它在下面的程序中闪烁< / p>
procedure TForm2.ListView2DblClick(Sender: TObject);
这是我的代码
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, StdCtrls, ComCtrls;
type
TForm2 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
ListView1: TListView;
ListView2: TListView;
procedure FormCreate(Sender: TObject);
procedure TForm2.ListView2DblClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
{$R *.dfm}
procedure TForm2.FormCreate(Sender: TObject);
var
i: integer;
begin
// NOTE: this can all be done at design-time so
// you don't need to do it in code at runtime!
ListView1.Columns[0].Width := 20;
ListView2.Columns[0].Width := 20;
for i := 0 to 49 do begin
ListView1.Items.Add.Caption := IntToStr(i);
with ListView2.Items.Add do begin
Caption := IntToStr(i);
SubItems.Add('0');
end;
end;
ListView2.Columns[1].Caption := 'name';
ListView1.Columns[1].Caption := 'extension';
ListView1.Columns[2].Caption := 'format';
ListView1.Columns[3].Caption := 'size';
ListView1.Columns[4].Caption := 'date';
ListView1.Columns[5].Caption := 'addres';
end;
procedure TForm2.ListView2DblClick(Sender: TObject);
var
Item: TListItem;
begin
Item := ListView2.Selected;
if Item = nil then Exit;
if (Item.SubItems[0] <> '1024') and (Item.SubItems[0] <> '0') then
ListView1.Selected := ListView1.Items[StrToInt(Item.SubItems[0])];
end;
end.
。
procedure HD;
var
i: integer;
begin
for i := 0 to 49 do begin
with form2.ListView1.Items[i] do begin
SubItems[0] := TABLE[i].name;
SubItems[1] := TABLE[i].format;
if TABLE[i].tip then
SubItems[2] := 'folder'
else
SubItems[2] := 'file';
SubItems[3] := IntToStr(TABLE[i].nach);
SubItems[4] := IntToStr(TABLE[i].razmer);
end;
form2.ListView2.Items[i].SubItems[0] := IntToStr(fat[i]);
end;
end;
答案 0 :(得分:4)
删除事件处理程序声明中的Form2.
部分:
type
TForm2 = class(TForm)
Edit1: TEdit;
Edit2: TEdit;
ListView1: TListView;
ListView2: TListView;
procedure FormCreate(Sender: TObject);
procedure ListView2DblClick(Sender: TObject); // <-- here
private
{ Private declarations }
public
{ Public declarations }
end;
答案 1 :(得分:-1)
为什么单位“结束”。出现在以下过程中:
procedure TForm2.ListView2DblClick(Sender: TObject);
var
Item: TListItem;
begin
Item := ListView2.Selected;
if Item = nil then Exit;
if (Item.SubItems[0] <> '1024') and (Item.SubItems[0] <> '0') then
ListView1.Selected := ListView1.Items[StrToInt(Item.SubItems[0])];
end;
end.
除非您要从多个单位发布代码,否则请将其移至单元文件的末尾。