UnitMain.pas
上传用户:zexin0769
上传日期:2010-01-19
资源大小:443k
文件大小:14k
源码类别:

百货/超市行业

开发平台:

Delphi

  1. unit UnitMain;
  2. interface
  3. uses
  4.   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  5.   Dialogs, StdCtrls, ExtCtrls, Menus, ImgList, ADODB, mmsystem;
  6. type
  7.   TForm2 = class(TForm)
  8.     ImageBack: TImage;
  9.     Image2: TImage;
  10.     Image3: TImage;
  11.     Image4: TImage;
  12.     Image1: TImage;
  13.     Image6: TImage;
  14.     Image7: TImage;
  15.     Image111: TImage;
  16.     Image112: TImage;
  17.     Image121: TImage;
  18.     Image122: TImage;
  19.     Image131: TImage;
  20.     Image132: TImage;
  21.     Image142: TImage;
  22.     Image141: TImage;
  23.     Image151: TImage;
  24.     Image152: TImage;
  25.     PopupMenu5: TPopupMenu;
  26.     N1: TMenuItem;
  27.     N2: TMenuItem;
  28.     N3: TMenuItem;
  29.     ImageList1: TImageList;
  30.     PopupMenu1: TPopupMenu;
  31.     N9: TMenuItem;
  32.     PopupMenu2: TPopupMenu;
  33.     PopupMenu3: TPopupMenu;
  34.     N15: TMenuItem;
  35.     N16: TMenuItem;
  36.     N19: TMenuItem;
  37.     N20: TMenuItem;
  38.     N21: TMenuItem;
  39.     N7: TMenuItem;
  40.     N23: TMenuItem;
  41.     N4: TMenuItem;
  42.     N5: TMenuItem;
  43.     N6: TMenuItem;
  44.     N8: TMenuItem;
  45.     ImageBar31: TImage;
  46.     ImageBar32: TImage;
  47.     ImageBar33: TImage;
  48.     ImageBar34: TImage;
  49.     ImageBar11: TImage;
  50.     ImageBar12: TImage;
  51.     ImageBar21: TImage;
  52.     ImageBar22: TImage;
  53.     ImageBar41: TImage;
  54.     procedure Image2Click(Sender: TObject);
  55.     procedure ShowBar(BarNo:Integer);
  56.     procedure ShowMenu(MenuNo:Integer);
  57.     procedure Image3Click(Sender: TObject);
  58.     procedure Image4Click(Sender: TObject);
  59.     procedure Image1Click(Sender: TObject);
  60.     procedure ImageBackMouseMove(Sender: TObject; Shift: TShiftState; X,
  61.       Y: Integer);
  62.     procedure Image7Click(Sender: TObject);
  63.     procedure Image6Click(Sender: TObject);
  64.     procedure Image111MouseMove(Sender: TObject; Shift: TShiftState; X,
  65.       Y: Integer);
  66.     procedure Image121MouseMove(Sender: TObject; Shift: TShiftState; X,
  67.       Y: Integer);
  68.     procedure Image131MouseMove(Sender: TObject; Shift: TShiftState; X,
  69.       Y: Integer);
  70.     procedure Image141MouseMove(Sender: TObject; Shift: TShiftState; X,
  71.       Y: Integer);
  72.     procedure Image151MouseMove(Sender: TObject; Shift: TShiftState; X,
  73.       Y: Integer);
  74.     procedure N3Click(Sender: TObject);
  75.     procedure Image112Click(Sender: TObject);
  76.     procedure Image122Click(Sender: TObject);
  77.     procedure Image132Click(Sender: TObject);
  78.     procedure Image152Click(Sender: TObject);
  79.     procedure Image111Click(Sender: TObject);
  80.     procedure Image121Click(Sender: TObject);
  81.     procedure Image131Click(Sender: TObject);
  82.     procedure Image151Click(Sender: TObject);
  83.     procedure N7Click(Sender: TObject);
  84.     procedure ShowFrame(FrameNo:Integer);
  85.     procedure N23Click(Sender: TObject);
  86.     procedure FormClose(Sender: TObject; var Action: TCloseAction);
  87.     procedure FormCreate(Sender: TObject);
  88.     procedure N15Click(Sender: TObject);
  89.     procedure N19Click(Sender: TObject);
  90.     procedure FormActivate(Sender: TObject);
  91.     procedure N9Click(Sender: TObject);
  92.     procedure N20Click(Sender: TObject);
  93.     procedure N5Click(Sender: TObject);
  94.     procedure N16Click(Sender: TObject);
  95.     procedure N6Click(Sender: TObject);
  96.     procedure N2Click(Sender: TObject);
  97.     procedure Image142Click(Sender: TObject);
  98.     procedure ImageBar11Click(Sender: TObject);
  99.     procedure ImageBar12Click(Sender: TObject);
  100.     procedure ImageBar21Click(Sender: TObject);
  101.     procedure ImageBar22Click(Sender: TObject);
  102.     procedure ImageBar31Click(Sender: TObject);
  103.     procedure ImageBar32Click(Sender: TObject);
  104.     procedure ImageBar33Click(Sender: TObject);
  105.     procedure ImageBar34Click(Sender: TObject);
  106.     procedure ImageBar41Click(Sender: TObject);
  107.     procedure N1Click(Sender: TObject);
  108.   private
  109.     { Private declarations }
  110.   public
  111.     { Public declarations }
  112.   end;
  113. var
  114.   Form2: TForm2;
  115.   CurrBar: Integer;
  116.   IsCreat: bool;
  117. implementation
  118. uses UnitLogin, UnitUserList, UnitProdList, UnitSell, UnitReportProd,
  119.   UnitDbBuckup, UnitReportSell, UnitSellHistory, UnitAbout, UnitHelp;
  120. {$R *.dfm}
  121. procedure TForm2.Image2Click(Sender: TObject);
  122. begin
  123.   ShowBar(2);
  124. end;
  125. procedure TForm2.ShowBar(BarNo:Integer);
  126. var
  127.   i,j:integer;
  128.   AImage:TComponent;
  129. begin
  130.   if  barno>currbar then
  131.   begin
  132.     for i := currbar+1 to barno do
  133.     begin
  134.       Aimage := Form2.FindComponent('Image' + IntToStr(i));
  135.       if Aimage is Timage then TImage(AImage).top :=  TImage(AImage).top-134;
  136.     end;
  137.   end
  138.   else
  139.   begin
  140.     for i := barno+1 to currbar do
  141.     begin
  142.       Aimage := Form2.FindComponent('Image' + IntToStr(i));
  143.       if Aimage is Timage then TImage(AImage).top :=  TImage(AImage).top+134;
  144.     end;
  145.   end;
  146.   for i:=1 to 4 do
  147.     for j:=1 to 4 do
  148.     begin
  149.       Aimage := Form2.FindComponent('ImageBar' + IntToStr(i) + IntToStr(j));
  150.       if Aimage is Timage then
  151.         if i=BarNo then
  152.           TImage(AImage).Visible := True
  153.         else
  154.           TImage(AImage).Visible := False;
  155.     end;
  156.   if CurrBar<>BarNo then sndplaysound(pchar(ExeRoot+'soundfolder.wav'),snd_async);
  157.   CurrBar := BarNo;
  158. end;
  159. procedure TForm2.ShowMenu(MenuNo:Integer);
  160. var
  161.   i: integer;
  162.   AImage: TComponent;
  163. begin
  164.   for i := 1 to 5 do
  165.   begin
  166.     Aimage := Form2.FindComponent('Image1' + IntToStr(i) + '2');
  167.     if i<>MenuNo then
  168.     begin
  169.       TImage(AImage).Visible := False;
  170.     end
  171.     else
  172.       TImage(AImage).Visible := True;
  173.   end;
  174. end;
  175. procedure TForm2.Image3Click(Sender: TObject);
  176. begin
  177.   ShowBar(3);
  178. end;
  179. procedure TForm2.Image4Click(Sender: TObject);
  180. begin
  181.   ShowBar(4);
  182. end;
  183. procedure TForm2.Image1Click(Sender: TObject);
  184. begin
  185.   ShowBar(1);
  186. end;
  187. procedure TForm2.ImageBackMouseMove(Sender: TObject; Shift: TShiftState; X,
  188.   Y: Integer);
  189. begin
  190.   ShowMenu(0);
  191.   if (ssleft in shift) then
  192.   begin
  193.     releasecapture;
  194.     perform(wm_syscommand, $f012, 0);
  195.   end;
  196. end;
  197. procedure TForm2.Image7Click(Sender: TObject);
  198. begin
  199.   application.Minimize;
  200. end;
  201. procedure TForm2.Image6Click(Sender: TObject);
  202. begin
  203.   application.Terminate;
  204. end;
  205. procedure TForm2.Image111MouseMove(Sender: TObject; Shift: TShiftState; X,
  206.   Y: Integer);
  207. begin
  208.   ShowMenu(1);
  209. end;
  210. procedure TForm2.Image121MouseMove(Sender: TObject; Shift: TShiftState; X,
  211.   Y: Integer);
  212. begin
  213.   ShowMenu(2);
  214. end;
  215. procedure TForm2.Image131MouseMove(Sender: TObject; Shift: TShiftState; X,
  216.   Y: Integer);
  217. begin
  218.   ShowMenu(3);
  219. end;
  220. procedure TForm2.Image141MouseMove(Sender: TObject; Shift: TShiftState; X,
  221.   Y: Integer);
  222. begin
  223.   ShowMenu(4);
  224. end;
  225. procedure TForm2.Image151MouseMove(Sender: TObject; Shift: TShiftState; X,
  226.   Y: Integer);
  227. begin
  228.   ShowMenu(5);
  229. end;
  230. procedure TForm2.N3Click(Sender: TObject);
  231. begin
  232.   form2.Close;
  233. end;
  234. procedure TForm2.Image112Click(Sender: TObject);
  235. begin
  236.   PopupMenu1.Popup(Form2.Left +Image112.Left ,Form2.Top + Image112.Top + Image112.Height + 1);
  237. end;
  238. procedure TForm2.Image122Click(Sender: TObject);
  239. begin
  240.   PopupMenu2.Popup(Form2.Left +Image122.Left ,Form2.Top + Image122.Top + Image122.Height + 1);
  241. end;
  242. procedure TForm2.Image132Click(Sender: TObject);
  243. begin
  244.   PopupMenu3.Popup(Form2.Left +Image132.Left ,Form2.Top + Image132.Top + Image132.Height + 1);
  245. end;
  246. procedure TForm2.Image152Click(Sender: TObject);
  247. begin
  248.   PopupMenu5.Popup(Form2.Left +Image152.Left ,Form2.Top + Image152.Top + Image152.Height + 1);
  249. end;
  250. procedure TForm2.Image111Click(Sender: TObject);
  251. begin
  252.   PopupMenu1.Popup(Form2.Left +Image112.Left ,Form2.Top + Image112.Top + Image112.Height + 1);
  253. end;
  254. procedure TForm2.Image121Click(Sender: TObject);
  255. begin
  256.   PopupMenu2.Popup(Form2.Left +Image122.Left ,Form2.Top + Image122.Top + Image122.Height + 1);
  257. end;
  258. procedure TForm2.Image131Click(Sender: TObject);
  259. begin
  260.   PopupMenu3.Popup(Form2.Left +Image132.Left ,Form2.Top + Image132.Top + Image132.Height + 1);
  261. end;
  262. procedure TForm2.Image151Click(Sender: TObject);
  263. begin
  264.   PopupMenu5.Popup(Form2.Left +Image152.Left ,Form2.Top + Image152.Top + Image152.Height + 1);
  265. end;
  266. procedure TForm2.N23Click(Sender: TObject);
  267. begin
  268.   {用户列表}ShowFrame(1);
  269. end;
  270. procedure TForm2.N7Click(Sender: TObject);
  271. begin
  272.   {商品列表}ShowFrame(2);
  273. end;
  274. procedure TForm2.ShowFrame(FrameNo:Integer);
  275. var
  276.   i: integer;
  277. begin
  278.   if (UserType<>'管理员') and (FrameNo<>3) then
  279.   begin
  280.     messagebox(handle,'没有足够的权限!','权限不足',MB_ICONWARNING+mb_ok);
  281.     exit;
  282.   end;
  283.   {清除所有的Frame}
  284.   for i:=0 to self.ComponentCount-1 do
  285.     if (self.Components[i] is Tframe) then (self.Components[i] as Tframe).Free;
  286.   {建立相应的Frame}
  287.   case FrameNo of
  288.     1:
  289.     begin
  290.       with TFrameUserList.Create(self) do
  291.       begin
  292.         Parent := Form2;
  293.         Left := 220;
  294.         Top := 195;
  295.         ADOQuery1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+DataFile+';Persist Security Info=False';
  296.         ADOQuery1.Active := True;
  297.         Show;
  298.       end;
  299.     end;
  300.     2:
  301.     begin
  302.       with TFrameProdList.Create(self) do
  303.       begin
  304.         Parent := Form2;
  305.         Left := 220;
  306.         Top := 195;
  307.         ADOQuery1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+DataFile+';Persist Security Info=False';
  308.         ADOQuery1.Active := True;
  309.         Show;
  310.       end;
  311.     end;
  312.     3:
  313.     begin
  314.       with TFrameSell.Create(self) do
  315.       begin
  316.         Parent := Form2;
  317.         Left := 220;
  318.         Top := 195;
  319.         ADOQuery1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+DataFile+';Persist Security Info=False';
  320.         Show;
  321.       end;
  322.     end;
  323.     4:
  324.     begin
  325.       with TFrameDbBuckup.Create(self) do
  326.       begin
  327.         Parent := Form2;
  328.         Left := 220;
  329.         Top := 195;
  330.         Show;
  331.       end;
  332.     end;
  333.     5:
  334.     begin
  335.       with TFrameSellHistory.Create(self) do
  336.       begin
  337.         Parent := Form2;
  338.         Left := 220;
  339.         Top := 195;
  340.         ADOQuery1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+DataFile+';Persist Security Info=False';
  341.         ADOQuery1.Active := True;
  342.         Show;
  343.       end;
  344.     end;
  345.   end;
  346. end;
  347. procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
  348. begin
  349.   IsCreat := True;
  350.   sndplaysound(pchar(ExeRoot+'soundlogout.wav'),snd_async);
  351.   form1.Show;
  352. end;
  353. procedure TForm2.FormCreate(Sender: TObject);
  354. begin
  355.   CurrBar := 3;
  356.   IsCreat := True;
  357. end;
  358. procedure TForm2.N15Click(Sender: TObject);
  359. begin
  360.   ShowFrame(3);
  361. end;
  362. procedure TForm2.N19Click(Sender: TObject);
  363. begin
  364.   if (UserType<>'管理员') then
  365.   begin
  366.     messagebox(handle,'没有足够的权限!','权限不足',MB_ICONWARNING+mb_ok);
  367.     exit;
  368.   end;
  369.   DbReportProd.ADOQuery1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+DataFile+';Persist Security Info=False;';
  370.   DbReportProd.ADOQuery1.Active := True;
  371.   DbRePortProd.QuickRep1.Refresh;
  372.   DbReportProd.QuickRep1.Preview;
  373. end;
  374. procedure TForm2.FormActivate(Sender: TObject);
  375. begin
  376.   if IsCreat then
  377.   begin
  378.     sndplaysound(pchar(ExeRoot+'soundlogin.wav'),snd_async);
  379.     ShowBar(3);
  380.     ShowFrame(3);
  381.     IsCreat := False;
  382.   end;
  383. end;
  384. procedure TForm2.N9Click(Sender: TObject);
  385. begin
  386.   ShowFrame(4);
  387. end;
  388. procedure TForm2.N20Click(Sender: TObject);
  389. begin
  390.   if (UserType<>'管理员') then
  391.   begin
  392.     messagebox(handle,'没有足够的权限!','权限不足',MB_ICONWARNING+mb_ok);
  393.     exit;
  394.   end;
  395.   DbReportSell.ADOQuery1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+DataFile+';Persist Security Info=False;';
  396.   DbReportSell.ADOQuery1.Active := True;
  397.   DbRePortSell.QuickRep1.Refresh;
  398.   DbReportSell.QuickRep1.Preview;
  399. end;
  400. procedure TForm2.N5Click(Sender: TObject);
  401. begin
  402.   Application.Terminate;
  403. end;
  404. procedure TForm2.N16Click(Sender: TObject);
  405. var
  406.   ADOQuery1: TADOQuery;
  407. begin
  408.   if (UserType<>'管理员') then
  409.   begin
  410.     messagebox(handle,'没有足够的权限!','权限不足',MB_ICONWARNING+mb_ok);
  411.     exit;
  412.   end;
  413.   ADOQuery1:= TADOQuery.Create(self);
  414.   ADOQuery1.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+DataFile+';Persist Security Info=False;';
  415.   ADOQuery1.SQL.Clear;
  416.   ADOQuery1.SQL.Add('select sum(sell_prod_price*sell_number) as TDResult from t_sell where year(sell_time)=year(now()) and month(sell_time)=month(now()) and day(sell_time)=day(now())');
  417.   ADOQuery1.Open;
  418.   messagebox(handle,PChar('今日销售额为 '+ADOQuery1.FieldByName('TDResult').AsString+' 元。'),'今日盘点',MB_ICONinformation+mb_ok);
  419.   ADOQuery1.Free;
  420. end;
  421. procedure TForm2.N6Click(Sender: TObject);
  422. begin
  423.   ShowFrame(5);
  424. end;
  425. procedure TForm2.N2Click(Sender: TObject);
  426. begin
  427.   FormAbout.ShowModal;
  428. end;
  429. procedure TForm2.Image142Click(Sender: TObject);
  430. begin
  431.   if (UserType<>'管理员') then
  432.   begin
  433.     messagebox(handle,'没有足够的权限!','权限不足',MB_ICONWARNING+mb_ok);
  434.     exit;
  435.   end;
  436.   messagebox(handle,'共享版本不提供此功能,要升级软件,请与作者取得联系!','升级软件',MB_ICONinformation+mb_ok);
  437. end;
  438. procedure TForm2.ImageBar11Click(Sender: TObject);
  439. begin
  440.   N23Click(Self);
  441. end;
  442. procedure TForm2.ImageBar12Click(Sender: TObject);
  443. begin
  444.   N9Click(Self);
  445. end;
  446. procedure TForm2.ImageBar21Click(Sender: TObject);
  447. begin
  448.   N7Click(Self);
  449. end;
  450. procedure TForm2.ImageBar22Click(Sender: TObject);
  451. begin
  452.   N19Click(Self);
  453. end;
  454. procedure TForm2.ImageBar31Click(Sender: TObject);
  455. begin
  456.   N15Click(Self);
  457. end;
  458. procedure TForm2.ImageBar32Click(Sender: TObject);
  459. begin
  460.   N20Click(Self);
  461. end;
  462. procedure TForm2.ImageBar33Click(Sender: TObject);
  463. begin
  464.   N6Click(Self);
  465. end;
  466. procedure TForm2.ImageBar34Click(Sender: TObject);
  467. begin
  468.   N16Click(Self);
  469. end;
  470. procedure TForm2.ImageBar41Click(Sender: TObject);
  471. begin
  472.   Image142Click(Self);
  473. end;
  474. procedure TForm2.N1Click(Sender: TObject);
  475. begin
  476.   FormHelp.WebBrowser1.Navigate(ExeRoot+'helpindex.htm');
  477.   FormHelp.ShowModal;
  478. end;
  479. end.