亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? qrdatawz.pas

?? delphi7報表打印控件源碼 可以設計報表
?? PAS
字號:
{ :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
  :: QuickReport 3.5 for Delphi and C++Builder               ::
  ::                                                         ::
  :: QRDATAWZ - TABLE/FIELDS SELECTION DIALOG                ::
  ::                                                         ::
  :: Copyright (c) 2001 A Lochert                            ::
  :: All Rights Reserved                                     ::
  ::                                                         ::
  :: web: http://www.qusoft.no                               ::
  ::                                                         ::
  ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: }

unit QRDataWz;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  DB, DBTables, StdCtrls, FileCtrl;

type
  TTableSelector = class(TForm)
    GroupBox2: TGroupBox;
    SelectDir: TButton;
    AliasName: TComboBox;
    GroupBox4: TGroupBox;
    Label7: TLabel;
    Label8: TLabel;
    AvailableFields: TListBox;
    AddOne: TButton;
    AddAll: TButton;
    RemoveOne: TButton;
    RemoveAll: TButton;
    SelectedFields: TListBox;
    Label1: TLabel;
    TableName: TComboBox;
    Label6: TLabel;
    ContinueBtn: TButton;
    CancelBtn: TButton;
    Table: TTable;
    procedure TableNameChange(Sender: TObject);
    procedure SelectDirClick(Sender: TObject);
    procedure TableNameEnter(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure AddOneClick(Sender: TObject);
    procedure AddAllClick(Sender: TObject);
    procedure RemoveOneClick(Sender: TObject);
    procedure RemoveAllClick(Sender: TObject);
    procedure AvailableFieldsClick(Sender: TObject);
    procedure SelectedFieldsClick(Sender: TObject);
    procedure AvailableFieldsDblClick(Sender: TObject);
    procedure SelectedFieldsDblClick(Sender: TObject);
    procedure BackBtnClick(Sender: TObject);
    procedure ContinueBtnClick(Sender: TObject);
    procedure CancelBtnClick(Sender: TObject);
  private
    procedure PickFields;
    procedure PickTables;
    procedure FixButtons;
  public
    { Public declarations }
  end;

function GetTable(var AAlias, ATable : string; ASelectedFields : TStrings; ParentControl : TWinControl) : integer;

implementation

{$R *.DFM}

procedure MoveList(Source, Dest : TListBox);
var
  I : integer;
begin
  with Source do
  begin
    for I := 0 to Items.Count - 1 do
      if Selected[I] then Dest.Items.AddObject(Items[I], Items.Objects[I]);
    I := 0;
    while I<Items.Count do
    begin
      if Selected[I] then
        Items.Delete(I)
      else
        inc(I);
    end
  end
end;

procedure MoveListAll(Source, Dest : TListBox);
var
  I : integer;
begin
  for I:=0 to Source.Items.Count - 1 do
    Dest.Items.AddObject(Source.Items[I], Source.Items.Objects[I]);
  Source.Clear;
end;

procedure TTableSelector.PickTables;
begin
  try
    Session.GetTableNames(AliasName.Text, '', true, false, TableName.Items);
  except
    AliasName.Text := '';
    TableName.Clear;
  end;
end;

procedure TTableSelector.PickFields;
var
  I : integer;
begin
  if (Table.DatabaseName <> AliasName.Text) or (Table.TableName <> TableName.Text) then
  begin
    Table.Close;
    Table.DatabaseName := AliasName.Text;
    Table.TableName := TableName.Text;
    Table.FieldDefs.Update;
    AvailableFields.Clear;
    SelectedFields.Clear;
    Table.Open;
    for I := 0 to Table.FieldCount - 1 do
      AvailableFields.Items.Add(Table.Fields[I].FieldName);
  end;
end;

procedure TTableSelector.TableNameChange(Sender: TObject);
begin
  PickFields;
end;

procedure TTableSelector.SelectDirClick(Sender: TObject);
var
  ADirectory : string;
begin
  ADirectory := AliasName.Text;
  if not DirectoryExists(ADirectory) then ADirectory := '';
  if SelectDirectory(ADirectory, [], 0) then
    AliasName.Text:=ADirectory;
end;

procedure TTableSelector.TableNameEnter(Sender: TObject);
begin
  PickTables;
end;

procedure TTableSelector.FormCreate(Sender: TObject);
var
  ADir : string;
begin
  Session.GetDatabaseNames(AliasName.Items);
  GetDir(0, ADir);
  AliasName.Text := ADir;
  ExitCode := 0;
end;

procedure TTableSelector.AddOneClick(Sender: TObject);
begin
  MoveList(AvailableFields, SelectedFields);
  FixButtons;
end;

procedure TTableSelector.AddAllClick(Sender: TObject);
begin
  MoveListAll(AVailableFields, SelectedFields);
  FixButtons;
end;

procedure TTableSelector.RemoveOneClick(Sender: TObject);
begin
  MoveList(SelectedFields, AvailableFields);
  FixButtons;
end;

procedure TTableSelector.RemoveAllClick(Sender: TObject);
begin
  MoveListAll(SelectedFields, AvailableFields);
  FixButtons;
end;

procedure TTableSelector.AvailableFieldsClick(Sender: TObject);
begin
  AddOne.Enabled := AvailableFields.SelCount > 0;
  SelectedFields.ItemIndex := -1;
  FixButtons;
end;

procedure TTableSelector.SelectedFieldsClick(Sender: TObject);
begin
  RemoveOne.Enabled := SelectedFields.SelCount > 0;
  AvailableFields.ItemIndex := -1;
  FixButtons;
end;

procedure TTableSelector.AvailableFieldsDblClick(Sender: TObject);
begin
  SelectedFields.Items.Add(AvailableFields.Items[AvailableFields.ItemIndex]);
  AvailableFields.Items.Delete(AvailableFields.ItemIndex);
  FixButtons;
end;

procedure TTableSelector.SelectedFieldsDblClick(Sender: TObject);
begin
  AvailableFields.Items.Add(SelectedFields.items[SelectedFields.ItemIndex]);
  SelectedFields.Items.Delete(SelectedFields.ItemIndex);
  FixButtons;
end;

procedure TTableSelector.FixButtons;
begin
  ContinueBtn.Enabled := SelectedFields.Items.Count > 0;
end;

procedure TTableSelector.BackBtnClick(Sender: TObject);
begin
  ExitCode := 1;
end;

procedure TTableSelector.ContinueBtnClick(Sender: TObject);
begin
  ExitCode := 2;
end;

procedure TTableSelector.CancelBtnClick(Sender: TObject);
begin
  ExitCode := 3;
end;

function GetTable(var AAlias, ATable : string; ASelectedFields : TStrings; ParentControl : TWinControl) : integer;
begin
  with TTableSelector.Create(Application) do
  try
    if ParentControl <> nil then
    begin
      Parent := ParentControl;
      Position := poDesigned;
      Top := 0;
      Left := 0;
      BorderStyle := bsNone;
    end;
    AliasName.Text := AAlias;
    PickTables;
    if TableName.Items.IndexOf(ATable) > -1 then
    begin
      TableName.ItemIndex := TableName.Items.IndexOf(ATable);
      PickFields;
    end;
    if ASelectedFields.Count > 0 then
    begin
      SelectedFields.Items.Assign(ASelectedFields);
      FixButtons;
    end;
    Show;
    repeat
      Application.HandleMessage
    until ExitCode <> 0;
    if ExitCode = 2 then
    begin
      AAlias := AliasName.Text;
      ATable := TableName.Text;
      ASelectedFields.Assign(SelectedFields.Items);
    end;
    Result := ExitCode;
  finally
    Free;
  end;
end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲综合视频网| 日韩理论电影院| 成人精品视频网站| 亚洲二区视频在线| 日韩美一区二区三区| 亚洲韩国精品一区| 国产欧美日韩在线视频| 色噜噜狠狠一区二区三区果冻| 免费人成黄页网站在线一区二区| 久久久av毛片精品| 91麻豆福利精品推荐| 国产一区二区三区在线观看免费| 中文字幕一区二区三区av | 国产精品亚洲视频| 亚洲最新视频在线观看| 欧美激情中文不卡| 欧美日韩成人激情| 成人午夜短视频| 久久精品国产第一区二区三区| 国产精品国产馆在线真实露脸| 岛国精品在线播放| 精品亚洲porn| 亚洲美女免费视频| 中文字幕乱码日本亚洲一区二区| 在线国产亚洲欧美| 粉嫩高潮美女一区二区三区| 亚洲午夜久久久久久久久电影院 | 精品国产乱码91久久久久久网站| 91在线精品一区二区三区| 免费av成人在线| 日韩中文字幕1| 亚洲精品五月天| 精品成人免费观看| 欧美成人欧美edvon| 欧美三区免费完整视频在线观看| 91在线观看高清| 国产91精品一区二区麻豆亚洲| 日韩电影免费在线看| 午夜精品久久久久| 亚洲人成伊人成综合网小说| 久久亚洲欧美国产精品乐播| 欧美精品成人一区二区三区四区| jlzzjlzz亚洲女人18| 国产91精品免费| 国产盗摄女厕一区二区三区 | 精品sm捆绑视频| 欧美精品日韩综合在线| 欧美三级视频在线播放| 91麻豆国产在线观看| 色综合天天综合狠狠| 成人免费的视频| 韩国av一区二区三区在线观看| 蜜桃av一区二区在线观看| 午夜久久久久久久久久一区二区| 亚洲一二三级电影| 尤物视频一区二区| 亚洲精品中文在线| 午夜伦理一区二区| 亚洲va韩国va欧美va精品| 欧美韩日一区二区三区四区| 久久久三级国产网站| 精品福利一区二区三区免费视频| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 91黄色在线观看| 91蜜桃在线免费视频| 成人性生交大片免费看中文网站| 成人av先锋影音| 成人黄色777网| 国产九九视频一区二区三区| 高清国产一区二区三区| 国产麻豆成人精品| 91视频在线观看| 色综合一区二区| 色av一区二区| 日韩三级精品电影久久久| 日韩写真欧美这视频| 亚洲国产精品成人综合| 国产精品国产馆在线真实露脸 | 国产主播一区二区| 国产精品18久久久久久久久 | 972aa.com艺术欧美| 91麻豆精东视频| 日韩一区二区高清| 精品人在线二区三区| 国产女主播一区| 亚洲免费资源在线播放| 亚洲午夜免费电影| 国产一区二区三区久久悠悠色av| 国产成人av电影免费在线观看| 国产一区二区三区日韩| 色综合天天综合给合国产| 欧美视频自拍偷拍| 久久久久久久久久久电影| 中文字幕不卡在线观看| 一区二区三区高清不卡| 国内欧美视频一区二区| 成人av电影在线网| 欧美一二三四区在线| 国产亚洲午夜高清国产拍精品 | 欧美日韩免费视频| 中文字幕久久午夜不卡| 一区二区三区欧美| 蜜臀av性久久久久蜜臀aⅴ流畅| www.日韩精品| 亚洲精品免费看| 日韩精品一二三区| 韩国成人在线视频| 国产成人在线视频网站| 欧美老女人在线| 久久―日本道色综合久久| 国产精品久久久久久久久果冻传媒 | 精品一区二区三区香蕉蜜桃| 国产高清亚洲一区| 欧美日韩国产电影| 亚洲美女电影在线| 国产一区二区三区综合| 欧美日韩成人激情| 成人免费在线视频| 国产一区二区按摩在线观看| 欧美一区二区视频在线观看2020| 国产精品久久久久影院亚瑟| 韩国欧美一区二区| 欧美视频三区在线播放| 国产欧美精品一区二区色综合| 狂野欧美性猛交blacked| 色综合久久88色综合天天| 欧美成人一区二区三区在线观看| 亚洲美女淫视频| 国产91综合网| 欧美专区在线观看一区| 精品国产一区二区三区av性色| 中文天堂在线一区| 久久精品免费看| 日韩欧美一二三四区| 亚洲另类春色校园小说| 国产一区二区三区在线观看精品 | 欧美三级一区二区| 国产三级一区二区| 国产麻豆9l精品三级站| 69堂成人精品免费视频| 亚洲欧美日韩系列| 国产91综合网| 久久这里都是精品| 免费不卡在线观看| 在线播放一区二区三区| 亚洲一区二区三区四区五区黄| 在线免费观看视频一区| √…a在线天堂一区| 91在线观看成人| 中文字幕日韩一区二区| 国产美女在线精品| 久久嫩草精品久久久精品一| 久久av中文字幕片| 久久精品亚洲一区二区三区浴池| 蜜桃视频一区二区三区在线观看| 91在线视频网址| 亚洲欧美区自拍先锋| 91社区在线播放| 亚洲靠逼com| 欧美日韩高清一区| 亚洲18色成人| 欧美性大战久久| 日韩国产欧美视频| 日韩欧美精品在线视频| 国产成人精品免费| 亚洲国产精品黑人久久久| 97se亚洲国产综合自在线观| 亚洲欧洲综合另类| 色综合天天综合在线视频| 亚洲欧洲色图综合| 69堂精品视频| 久久99国产精品久久99| 99久久精品免费精品国产| av午夜精品一区二区三区| 欧美在线不卡一区| 亚洲精品福利视频网站| 欧美精品v国产精品v日韩精品 | 亚洲国产日韩精品| 日韩免费看网站| 精品一区中文字幕| 亚洲日本电影在线| 欧美日韩精品高清| 国产乱码一区二区三区| 国产精品视频一二三| 成人美女在线观看| 亚洲主播在线播放| 制服丝袜av成人在线看| 大陆成人av片| 一级中文字幕一区二区| 欧美成人免费网站| 成人妖精视频yjsp地址| 中文字幕一区二区三区不卡在线| 欧美欧美欧美欧美| 国模少妇一区二区三区| 一区二区三区色| 欧美一级片在线观看| 成人毛片老司机大片| 亚洲综合一区在线| 精品国产一区二区三区四区四| 色综合视频在线观看|