📄 unit_frmplanitem.pas
字号:
unit Unit_frmplanitem;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Unit_frmtemplate, ExtCtrls, StdCtrls, ComCtrls, CyberListVw,
CyberEdit, CyberPanel, Buttons, CyberXPMenu,ADODB, Menus;
type
Tfrmplanitem = class(Tfrmtemplate)
CyberSizePanel1: TCyberSizePanel;
ListView1: TCyberListView;
BtnAdd: TBitBtn;
BtnEdit: TBitBtn;
BtnDel: TBitBtn;
BtnExit: TBitBtn;
CyberXPMenu1: TCyberXPMenu;
Label6: TLabel;
TreeView1: TTreeView;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
procedure BtnAddClick(Sender: TObject);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
procedure BtnEditClick(Sender: TObject);
procedure BtnDelClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure BtnExitClick(Sender: TObject);
procedure FormActivate(Sender: TObject);
procedure ListView1DblClick(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure TreeView1Click(Sender: TObject);
private
cinemaid,hallid:integer;
templateid:integer;
procedure InitTreeview;
procedure refreshlistview(sqlstr:string);
{ Private declarations }
public
constructor MyCreate(AOwner: TComponent; _templateid: integer);
{ Public declarations }
end;
var
frmplanitem: Tfrmplanitem;
implementation
uses unit_public,unit_adodm,unit_frmplaninfo;
{$R *.dfm}
procedure Tfrmplanitem.BtnAddClick(Sender: TObject);
var
sqlstr:string;
selnode:TTreeNode;
begin
inherited;
selnode:=treeview1.Selected ;
if (selnode=nil) or (selnode.Level <>2) then
begin
publicinfo.showmsg('请选择一个影厅!');
exit;
end;
frmplaninfo:=Tfrmplaninfo.MyCreate(Application,false);
try
frmplaninfo.templateid :=templateid;
frmplaninfo.cinemaid :=integer(selnode.Parent.Data);
frmplaninfo.cinemaname :=selnode.Parent.Text ;
frmplaninfo.hallid :=integer(selnode.Data);
frmplaninfo.hallname :=selnode.Text ;
frmplaninfo.ShowModal ;
finally
frmplaninfo.Free ;
sqlstr:='select * from tbldefaultplan_view where templateid='+inttostr(templateid);
refreshlistview(sqlstr);
end;
end;
procedure Tfrmplanitem.refreshlistview(sqlstr: string);
var
I,_id:integer;
item0:TListItem;
reccount:integer;
_cinemaname,_hallname,_fieldnum,_startdate,_enddate:string;
begin
listview1.Items.BeginUpdate;
listview1.Items.Clear ;
listview1.Items.EndUpdate;
try
//listview1.Items.BeginUpdate ;
if publicinfo.Execsql(sqlstr,false) then
begin
with adodm.ADOQRY do
begin
reccount:=recordcount;
if reccount<=0 then exit;
first;
for i:=1 to reccount do
begin
_id :=fieldbyname('id').asinteger;
_cinemaname :=fieldbyname('cinemaname').AsString;
_hallname :=fieldbyname('hallname').AsString;
_fieldnum :=fieldbyname('fieldnum').AsString;
_startdate :=Formatdatetime('HH:mm',fieldbyname('starttime').AsDateTime);
_enddate :=Formatdatetime('HH:mm',fieldbyname('endtime').AsDateTime);
item0 :=listview1.Items.Add ;
item0.Caption :=_cinemaname;
item0.SubItems.Add(_hallname);
item0.SubItems.Add(_fieldnum);
item0.SubItems.Add(_startdate);
item0.SubItems.Add(_enddate);
item0.Data :=pointer(_id);
next;
end;
end;
end;
finally
// listview1.Items.EndUpdate ;
end;
end;
procedure Tfrmplanitem.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
inherited;
if key=27 then close;
end;
procedure Tfrmplanitem.BtnEditClick(Sender: TObject);
var
selitem :TListItem;
begin
inherited;
selitem:=listview1.Selected ;
if selitem=nil then exit;
frmplaninfo:=Tfrmplaninfo.MyCreate(Application,true);
try
frmplaninfo.id :=integer(selitem.Data);
if frmplaninfo.ShowModal=mrok then
begin
selitem.Caption :=frmplaninfo.Edtcinema.Text ;
selitem.SubItems[0]:=frmplaninfo.edthall.Text ;
selitem.SubItems[1]:=frmplaninfo.Edtfieldnum.Text ;
selitem.SubItems[2]:=formatdatetime('hh:mm',frmplaninfo.DTPStartdate.time);
selitem.SubItems[3]:=formatdatetime('hh:mm',frmplaninfo.dtpenddate.time);
end;
finally
frmplaninfo.Free ;
end;
end;
procedure Tfrmplanitem.BtnDelClick(Sender: TObject);
var
selitem :TListItem;
sqlstr :string;
begin
inherited;
selitem:=listview1.Selected ;
if selitem=nil then exit;
sqlstr:='delete from tbldefaultplan where id='+inttostr(integer(selitem.Data));
if publicinfo.Execsql(sqlstr,true) then
begin
selitem.Delete ;
publicinfo.showmsg('模板计划信息删除成功');
end;
end;
procedure Tfrmplanitem.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
inherited;
Action :=cafree;
end;
procedure Tfrmplanitem.BtnExitClick(Sender: TObject);
begin
inherited;
close;
end;
constructor Tfrmplanitem.MyCreate(AOwner: TComponent;
_templateid: integer);
begin
Inherited Create(AOwner);
templateid:=_templateid;
end;
procedure Tfrmplanitem.FormActivate(Sender: TObject);
var
sqlstr:string;
begin
inherited;
InitTreeview;
sqlstr:='select * from tbldefaultplan_view where templateid='+inttostr(templateid);
refreshlistview(sqlstr);
end;
procedure Tfrmplanitem.ListView1DblClick(Sender: TObject);
begin
inherited;
BtnEditClick(nil);
end;
procedure Tfrmplanitem.InitTreeview;
var
I,j,_id :integer;
rootnode,node0,node1 :TTreeNode;
qry :TAdoQuery;
reccount :Integer;
_name :String;
begin
treeview1.Items.Clear ;
treeview1.Items.BeginUpdate ;
try
qry :=TAdoQuery.Create(Application);
qry.Connection :=adodm.ADOCN ;
rootnode:=treeview1.Items.Add(nil,'所有影院');
rootnode.Data :=pointer(-1);
if publicinfo.Execsql('select * from Tblcinemainfo',false) then
begin
reccount :=adodm.ADOQRY.RecordCount;
if reccount<=0 then exit;
adodm.ADOQRY.First ;
for i:=1 to reccount do
begin
_id :=adodm.ADOQRY.fieldbyname('id').AsInteger;
_name :=adodm.ADOQRY.fieldbyname('name').AsString;
node0 :=treeview1.Items.AddChild(rootnode,_name);
node0.data :=pointer(_id);
qry.Close ;
qry.SQL.Clear ;
qry.SQL.Add('select * from tblhallinfo where cinemaid='+inttostr(_id));
qry.Open ;
if qry.RecordCount>0 then
begin
qry.First ;
for j:=1 to qry.RecordCount do
begin
_id :=qry.fieldbyname('id').AsInteger;
_name :=qry.fieldbyname('name').AsString;
node1 :=treeview1.Items.AddChild(node0,_name);
node1.Data :=pointer(_id);
qry.Next ;
end;
end;
adodm.ADOQRY.Next ;
end;
end;
finally
qry.Close ;
qry.Free ;
rootnode.Expand(true);
treeview1.Items.EndUpdate ;
end;
end;
procedure Tfrmplanitem.N1Click(Sender: TObject);
begin
inherited;
if btnadd.Enabled then btnaddclick(nil);
end;
procedure Tfrmplanitem.TreeView1Click(Sender: TObject);
var
sqlstr:string;
selnode:TTreeNode;
begin
inherited;
selnode:=treeview1.Selected ;
if (selnode=nil) then exit;
case selnode.Level of
0:
sqlstr:='select * from tbldefaultplan_view where templateid='
+inttostr(templateid);
1:
sqlstr:='select * from tbldefaultplan_view where templateid='
+inttostr(templateid)+' and cinemaid='+inttostr(integer(selnode.data));
2:
sqlstr:='select * from tbldefaultplan_view where templateid='
+inttostr(templateid)+' and hallid='+inttostr(integer(selnode.data));
end;
refreshlistview(sqlstr);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -