📄 unit_frmfilm.pas
字号:
unit Unit_frmfilm;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Unit_frmtemplate, ExtCtrls, StdCtrls, ComCtrls, CyberListVw,
Buttons, CyberXPMenu;
type
Tfrmfilm = class(Tfrmtemplate)
Label1: TLabel;
ListView1: TCyberListView;
Btnadd: TBitBtn;
btnedit: TBitBtn;
BtnDel: TBitBtn;
BtnExit: TBitBtn;
CyberXPMenu1: TCyberXPMenu;
procedure BtnaddClick(Sender: TObject);
procedure btneditClick(Sender: TObject);
procedure BtnDelClick(Sender: TObject);
procedure BtnExitClick(Sender: TObject);
procedure ListView1DblClick(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure ListView1CustomDrawItem(Sender: TCustomListView;
Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
private
procedure refreshlistview(sqlstr:string);
{ Private declarations }
public
filmid:integer;
selected:Boolean;
{ Public declarations }
end;
var
frmfilm: Tfrmfilm;
implementation
uses unit_public,unit_adodm,unit_frmfilminfo;
{$R *.dfm}
procedure Tfrmfilm.BtnaddClick(Sender: TObject);
begin
inherited;
frmfilminfo:=Tfrmfilminfo.MyCreate(Application,false);
try
frmfilminfo.ShowModal ;
finally
frmfilminfo.Free ;
refreshlistview('select * from tblfilm_view');
end;
end;
procedure Tfrmfilm.btneditClick(Sender: TObject);
var
selitem:TListItem;
begin
inherited;
selitem:=listview1.Selected ;
if selitem=nil then exit;
frmfilminfo:=Tfrmfilminfo.MyCreate(Application,true);
try
frmfilminfo.id :=integer(selitem.Data);
if frmfilminfo.ShowModal=Mrok then
begin
selitem.Caption :=frmfilminfo._code ;
selitem.SubItems[0]:=frmfilminfo._name ;
selitem.SubItems[1]:=frmfilminfo._filmtypename ;
selitem.SubItems[2]:=frmfilminfo._adr ;
selitem.SubItems[3]:=frmfilminfo._issuer ;
selitem.SubItems[3]:=frmfilminfo._director ;
selitem.SubItems[4]:=frmfilminfo._actor ;
end;
finally
frmfilminfo.Free ;
end;
end;
procedure Tfrmfilm.BtnDelClick(Sender: TObject);
var
selitem :TListItem;
sqlstr :string;
begin
inherited;
selitem:=listview1.Selected ;
if selitem=nil then exit;
sqlstr:='delete from tblfilm where id='+inttostr(integer(selitem.Data));
if publicinfo.Execsql(sqlstr,true) then
begin
selitem.Delete ;
showmessage('影片信息删除成功!');
end;
end;
procedure Tfrmfilm.refreshlistview(sqlstr: string);
var
I,_id:integer;
item0:TListItem;
_code,_name,_adr,_factory,_issuer,_director,_actor,
_filmtypename:string;
begin
listview1.Items.BeginUpdate;
listview1.Items.Clear ;
listview1.Items.EndUpdate ;
try
listview1.Items.BeginUpdate ;
if publicinfo.Execsql(sqlstr,false) then
begin
if adodm.ADOQRY.RecordCount <=0 then exit;
with adodm.ADOQRY do
begin
first;
for i:=1 to recordcount do
begin
_id:=fieldbyname('id').AsInteger ;
_code:=fieldbyname('code').AsString ;
_name :=fieldbyname('name').AsString ;
_adr :=fieldbyname('address').AsString ;
_issuer:=fieldbyname('issuer').AsString ;
_director :=fieldbyname('director').AsString ;
_actor :=fieldbyname('player').AsString ;
_filmtypename:=fieldbyname('filmtypename').AsString ;
item0:=listview1.Items.Add ;
item0.Caption :=_code;
item0.SubItems.Add(_name);
item0.SubItems.Add(_filmtypename);
item0.SubItems.Add (_adr);
item0.SubItems.Add (_issuer);
item0.SubItems.Add (_director);
item0.SubItems.Add (_actor);
item0.Data :=pointer(_id);
next;
end;
end;
end;
finally
listview1.Items.EndUpdate ;
end;
end;
procedure Tfrmfilm.BtnExitClick(Sender: TObject);
begin
inherited;
close;
end;
procedure Tfrmfilm.ListView1DblClick(Sender: TObject);
begin
inherited;
if btnedit.Enabled then btneditclick(nil);
end;
procedure Tfrmfilm.FormActivate(Sender: TObject);
begin
inherited;
refreshlistview('select * from tblfilm_view');
end;
procedure Tfrmfilm.ListView1CustomDrawItem(Sender: TCustomListView;
Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
inherited;
publicinfo.ListViewDraw(item,DefaultDraw);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -