⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 addjfjqunit.~pa

📁 delphi6.0版本的主要用于学样、网吧的计费系统的源码
💻 ~PA
字号:
unit AddjfjqUnit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ImgList, ComCtrls, ToolWin, StdCtrls, ExtCtrls;

type
  TSeljfjqForm = class(TForm)
    Splitter2 : TSplitter;
    lvjf : TListView;
    Panel1 : TPanel;
    lvjq : TListView;
    Panel2 : TPanel;
    CboxJq : TCheckBox;
    CoolBar1 : TCoolBar;
    ToolBar1 : TToolBar;
    btn_add : TToolButton;
    btn_del : TToolButton;
    btn_save : TToolButton;
    btn_exit : TToolButton;
    ImageList1 : TImageList;
    Splitter1 : TSplitter;
    ToolButton1 : TToolButton;
    ToolButton2 : TToolButton;
    Panel3 : TPanel;
    Panel4 : TPanel;
    CboxSeljq : TCheckBox;
    lvxzjq : TListView;
    procedure FormShow(Sender : TObject);
    procedure btn_exitClick(Sender : TObject);
    procedure lvjfChange(Sender : TObject; Item : TListItem;
      Change : TItemChange);
    procedure lvjfClick(Sender : TObject);
    procedure btn_addClick(Sender : TObject);
    procedure btn_saveClick(Sender : TObject);
    procedure CboxJqClick(Sender : TObject);
    procedure btn_delClick(Sender : TObject);
    procedure FormClose(Sender : TObject; var Action : TCloseAction);
    procedure CboxSeljqClick(Sender : TObject);
  private
    { Private declarations }
    bsaved : boolean;
    function SaveNameStr : string;
    function SaveIdStr : string;
  public
    { Public declarations }
    InputIdStr : string;
    InputNameStr : string;
    ReturnIdStr : string;
    ReturnNameStr : string;
  end;

var
  SeljfjqForm : TSeljfjqForm;

implementation

uses datamodule;

{$R *.dfm}

procedure TSeljfjqForm.FormShow(Sender : TObject);
var
  li : tlistitem;
begin
  with dmfm.ADOQuery1 do
    begin
      close;
      sql.Text := 'select Fnum,Fname from TjfInfo where fenableuse=1 order by Forder';
      open;
      first;
      lvjf.Items.Clear;
      while not eof do
        begin
          li := lvjf.Items.Add;
          li.Caption := trim(fields[1].AsString);
          li.SubItems.add(trim(fields[0].AsString));

          next;
        end;
    end;

  lvjq.Items.Clear;
  lvxzjq.Items.Clear;
  cboxjq.Checked := false;
  cboxseljq.Checked := false;
  bsaved := false;
  ReturnIdStr := '';
  ReturnNameStr := '';
end;

procedure TSeljfjqForm.btn_exitClick(Sender : TObject);
begin
  close;
end;

procedure TSeljfjqForm.lvjfChange(Sender : TObject; Item : TListItem;
  Change : TItemChange);
begin
  cboxjq.Checked := false;
end;

procedure TSeljfjqForm.lvjfClick(Sender : TObject);
var
  li : tlistitem;
begin
  if lvjf.Selected = nil then exit;
  lvjq.Items.Clear;
  with dmfm.ADOQuery1 do
    begin
      close;
      sql.Text := format('SELECT id,pcname FROM xwpctb where Fjfnum=''%s''', [trim(lvjf.Selected.SubItems[0])]);
      open;
      first;
      while not eof do
        begin
          li := lvjq.Items.Add;
          li.Caption := trim(fields[1].AsString);
          li.SubItems.Add(trim(fields[0].AsString));

          next;
        end;
    end;
end;

procedure TSeljfjqForm.btn_addClick(Sender : TObject);
var
  i, j : integer;
  exitjq : boolean;
begin
  for i := 0 to lvjq.Items.Count - 1 do
    begin
      //如果机器被选中,且还没有添加到机器选择列表中,则将其添加到机器选择列表中
      exitjq := false;
      if lvjq.Items[i].Checked then
        begin
          for j := 0 to lvxzjq.Items.Count - 1 do
            begin
              if trim(lvjq.Items[i].Caption) = trim(lvxzjq.Items[j].SubItems.Strings[0]) then
                begin
                  exitjq := true;
                  break;
                end;
            end;

          if not exitjq then
            begin
              lvxzjq.Items.Add;
              lvxzjq.Items[lvxzjq.Items.Count - 1].Caption := lvjf.Selected.Caption;
              lvxzjq.Items[lvxzjq.Items.Count - 1].SubItems.add(lvjq.Items[i].Caption);
              lvxzjq.Items[lvxzjq.Items.Count - 1].SubItems.add(lvjq.Items[i].SubItems.Strings[0]);
            end;
        end;
    end;
end;

procedure TSeljfjqForm.btn_saveClick(Sender : TObject);
begin
  bsaved := true;
  close;
end;

procedure TSeljfjqForm.CboxJqClick(Sender : TObject);
var
  i : integer;
begin
  for i := 0 to lvjq.Items.Count - 1 do
    begin
      lvjq.Items[i].Checked := cboxjq.Checked;
    end;
end;

procedure TSeljfjqForm.btn_delClick(Sender : TObject);
var
  i : integer;
begin
  for i := lvxzjq.Items.Count - 1 downto 0 do
    begin
      if lvxzjq.Items[i].Checked then lvxzjq.Items[i].Delete;
    end;
end;

function TSeljfjqForm.SaveIdStr : string;
var
  i : integer;
begin
  result := '';
  for i := 0 to lvxzjq.Items.Count - 1 do
    result := result + lvxzjq.Items[i].SubItems.Strings[1] + ',';

  result := copy(result, 1, length(result) - 1);
end;

function TSeljfjqForm.SaveNameStr : string;
var
  i : integer;
begin
  result := '';
  for i := 0 to lvxzjq.Items.Count - 1 do
    result := result + '''' + lvxzjq.Items[i].SubItems.Strings[0] + ''',';

  result := copy(result, 1, length(result) - 1);
end;

procedure TSeljfjqForm.FormClose(Sender : TObject;
  var Action : TCloseAction);
begin
  if bsaved then
    begin
      ReturnIdStr := SaveIdStr;
      ReturnNameStr := SaveNameStr;
    end
  else
    begin
      ReturnIdStr := InputIdStr;
      ReturnNameStr := InputNameStr;
    end;
end;

procedure TSeljfjqForm.CboxSeljqClick(Sender : TObject);
var
  i : integer;
begin
  for i := 0 to lvxzjq.Items.Count - 1 do
    begin
      lvxzjq.Items[i].Checked := cboxseljq.Checked;
    end;
end;

end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -