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

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

?? mainfrm.pas

?? vVC顯示圖片 VC顯示圖片 VC顯示圖片 VC顯示圖片 VC顯示圖片
?? PAS
字號:
unit MainFrm;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics,
  Controls, Forms, Dialogs, ExtCtrls, 
  StdCtrls, IniFiles, CalcDelphi, CalcBcb, CalcVb,
  Grids, ComCtrls, ImgList, ShellApi, Registry, WizardCtrl;

type
  TMainForm = class(TForm)
    Panel1: TPanel;
    Image1: TImage;
    Notebook1: TNotebook;
    NotShowFirstCheckBox: TCheckBox;
    Bevel1: TBevel;
    Label1: TLabel;
    LanguageListBox: TListBox;
    Bevel2: TBevel;
    Label2: TLabel;
    PrjEdit: TEdit;
    PrjBrowseButton: TButton;
    Label3: TLabel;
    Label4: TLabel;
    Bevel3: TBevel;
    Label5: TLabel;
    Label6: TLabel;
    FilesListBox: TListBox;
    Label7: TLabel;
    AddFileButton: TButton;
    RemoveFileButton: TButton;
    Label10: TLabel;
    Label11: TLabel;
    OpenPrjDialog: TOpenDialog;
    OpenFilesDialog: TOpenDialog;
    Bevel5: TBevel;
    Label13: TLabel;
    ResultListView: TListView;
    Panel2: TPanel;
    LineTotalLabel: TLabel;
    ImageList1: TImageList;
    JokeLabel: TLabel;
    Image2: TImage;
    Label8: TLabel;
    Label9: TLabel;
    Image3: TImage;
    Image4: TImage;
    Image5: TImage;
    Label12: TLabel;
    EMailPanel: TPanel;
    URLPanel: TPanel;
    WizardCtrl: TWizardCtrl;
    Label14: TLabel;
    procedure WizardCtrlCancelClick(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure NotShowFirstCheckBoxClick(Sender: TObject);
    procedure WizardCtrlNextClick(Sender: TObject;
      var AllowChange: Boolean);
    procedure LanguageListBoxClick(Sender: TObject);
    procedure PrjBrowseButtonClick(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure WizardCtrlFinishClick(Sender: TObject);
    procedure AddFileButtonClick(Sender: TObject);
    procedure RemoveFileButtonClick(Sender: TObject);
    procedure LanguageListBoxDblClick(Sender: TObject);
    procedure EMailPanelClick(Sender: TObject);
    procedure URLPanelClick(Sender: TObject);
    procedure EMailPanelMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure URLPanelMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    procedure WizardCtrlHelpClick(Sender: TObject);
  private
    { Private declarations }
    DelphiCounter: TCalcDelphi;
    BcbCounter: TCalcBcb;
    VbCounter: TCalcVb;
    FLanguage: integer;

    function CheckExistInList(Name: string; List: TStrings): boolean;
    function CheckPrjExt(Language: integer; PrjFileName: string): boolean;
    procedure BeginCalculate;
    procedure DoCommandLine;
    procedure GetFileListByPrj(PrjFileName: string);
  public
    { Public declarations }
  end;

var
  MainForm: TMainForm;

implementation

uses Misc, OptionFrm;

{$R *.DFM}

procedure TMainForm.FormCreate(Sender: TObject);
begin
  DelphiCounter := TCalcDelphi.Create;
  BcbCounter := TCalcBcb.Create;
  VbCounter := TCalcVb.Create;

  LoadOptions;
  if Options.ShowWizardFirstPage then
    WizardCtrl.PageIndex := 0
  else
    WizardCtrl.PageIndex := 1;
  NotShowFirstCheckBox.Checked := not Options.ShowWizardFirstPage;
  LanguageListBox.ItemIndex := 1;
  LanguageListBox.ItemIndex := 0;
  FLanguage := LanguageListBox.ItemIndex;
  SendMessage(FilesListBox.Handle, LB_SETHORIZONTALEXTENT, 500, 0);
  DoCommandLine;
end;

procedure TMainForm.FormDestroy(Sender: TObject);
begin
  DelphiCounter.Free;
  BcbCounter.Free;
  VbCounter.Free;
end;

function TMainForm.CheckExistInList(Name: string; List: TStrings): boolean;
var
  i: integer;
begin
  for i := 0 to List.Count - 1 do
  begin
    if UpperCase(Name) = UpperCase(List[i]) then
    begin
      Result := true;
      exit;
    end;
  end;
  Result := false;
end;

function TMainForm.CheckPrjExt(Language: integer; PrjFileName: string): boolean;
var
  Ext: string;
begin
  Ext := UpperCase(ExtractFileExt(PrjFileName));
  case Language of
    0:  Result := (Ext = '.DPR');
    1:  Result := (Ext = '.BPR');
    2:  Result := (Ext = '.VBP');
    else Result := false;
  end;
  if not Result then
    MessageBox(Handle, '您的工程文件擴展名好像不太正確!', '提示', 48);
end;

procedure TMainForm.BeginCalculate;
var
  i, LineCount: integer;
  Ret: TStrings;
  ListItem: TListItem;
begin
  LineCount := 0;
  Ret := TStringList.Create;
  case FLanguage of
    0: LineCount := DelphiCounter.GetLineCount(FilesListBox.Items, Ret);
    1: LineCount := BcbCounter.GetLineCount(FilesListBox.Items, Ret);
    2: LineCount := VbCounter.GetLineCount(FilesListBox.Items, Ret);
  end;
  LineTotalLabel.Caption := AddThoundandFlag(LineCount) + ' 行';
  JokeLabel.Visible := (LineCount >= 10000);
  ResultListView.Items.Clear;
  for i := 0 to Ret.Count - 1 do
  begin
    ListItem := ResultListView.Items.Add;
    ListItem.Caption := FilesListBox.Items[i];
    ListItem.SubItems.Add(AddThoundandFlag(StrToInt(Ret[i])));
  end;
  Ret.Free;
end;

procedure TMainForm.DoCommandLine;
var
  Param, Ext: string;
begin
  Param := ParamStr(1);
  Ext := UpperCase(ExtractFileExt(Param));
  if Ext = '.DPR' then FLanguage := 0
  else if Ext = '.BPR' then FLanguage := 1
  else if Ext = '.VBP' then FLanguage := 2
  else exit;

  LanguageListBox.ItemIndex := FLanguage;
  PrjEdit.Text := Param;
  GetFileListByPrj(PrjEdit.Text);
  WizardCtrl.PageIndex := 2;
end;

procedure TMainForm.GetFileListByPrj(PrjFileName: string);
var
  FileList: TStrings;
begin
  FileList := TStringList.Create;
  case FLanguage of
    0:
      begin
        DelphiCounter.PrjFileName := PrjFileName;
        DelphiCounter.GetFileList(FileList);
      end;
    1:
      begin
        BcbCounter.PrjFileName := PrjFileName;
        BcbCounter.GetFileList(FileList);
      end;
    2:
      begin
        VbCounter.PrjFileName := PrjFileName;
        VbCounter.GetFileList(FileList);
      end;
  end;
  FilesListBox.Items.Assign(FileList);
  FileList.Free;
end;

procedure TMainForm.WizardCtrlCancelClick(Sender: TObject);
begin
  Close;
end;

procedure TMainForm.NotShowFirstCheckBoxClick(Sender: TObject);
begin
  Options.ShowWizardFirstPage := not NotShowFirstCheckBox.Checked;
  SaveOptions;
end;

procedure TMainForm.WizardCtrlNextClick(Sender: TObject;
  var AllowChange: Boolean);
begin
  case WizardCtrl.PageIndex of
    1:
      if LanguageListBox.ItemIndex = -1 then AllowChange := false;
    2:
      begin
        if PrjEdit.Text = '' then
        begin
          MessageBox(Handle, '你沒有填如工程文件名,所有文件將在下一步手工設置。', '提示', 48);
          FilesListBox.Items.Clear;
        end
        else if not CheckPrjExt(FLanguage, PrjEdit.Text) then AllowChange := false;
      end;
    3:
      BeginCalculate;
  end;
end;

procedure TMainForm.LanguageListBoxClick(Sender: TObject);
begin
  FLanguage := LanguageListBox.ItemIndex;
  PrjEdit.Text := '';
end;

procedure TMainForm.LanguageListBoxDblClick(Sender: TObject);
begin
  if LanguageListBox.ItemIndex <> -1 then WizardCtrl.NextPage;
end;

procedure TMainForm.PrjBrowseButtonClick(Sender: TObject);
begin
  case FLanguage of
    0:
      OpenPrjDialog.Filter := 'Delphi Project(*.dpr)|*.dpr';
    1:
      OpenPrjDialog.Filter := 'C++Builder Project(*.bpr)|*.bpr';
    2:
      OpenPrjDialog.Filter := 'VB Project(*.vbp)|*.vbp';
  end;
  OpenPrjDialog.FilterIndex := 1;
  OpenPrjDialog.FileName := '';
  if OpenPrjDialog.Execute then
  begin
    PrjEdit.Text := OpenPrjDialog.FileName;
    GetFileListByPrj(PrjEdit.Text);
  end;
end;

procedure TMainForm.WizardCtrlFinishClick(Sender: TObject);
begin
  Close;
end;

procedure TMainForm.AddFileButtonClick(Sender: TObject);
var
  i: integer;
begin
  if OpenFilesDialog.Execute then
  begin
    for i := 0 to OpenFilesDialog.Files.Count - 1 do
    begin
      if not CheckExistInList(OpenFilesDialog.Files[i], FilesListBox.Items) then
        FilesListBox.Items.Add(OpenFilesDialog.Files[i]);
    end;
  end;
end;

procedure TMainForm.RemoveFileButtonClick(Sender: TObject);
var
  i: integer;
begin
  for i := 0 to FilesListBox.Items.Count - 1 do
  begin
    if FilesListBox.Selected[i] then
    begin
      FilesListBox.Items.Delete(i);
      break;
    end;
  end;
end;

procedure TMainForm.EMailPanelClick(Sender: TObject);
begin
  ShellExecute(Self.Handle, 'Open', PChar('mailto:haoem@126.com'), '', '', 1);
end;

procedure TMainForm.URLPanelClick(Sender: TObject);
begin
  ShellExecute(Self.Handle, 'Open', PChar('http://haoxg.yeah.net'), '', '', 1);
end;

procedure TMainForm.EMailPanelMouseMove(Sender: TObject;
  Shift: TShiftState; X, Y: Integer);
begin
  if (X >=0) and (X < EMailPanel.Width) and (Y >=0) and (Y < EMailPanel.Height) then
  begin
    EMailPanel.Font.Style := [fsUnderline];
    EMailPanel.Font.Color := clRed;
    SetCapture(EMailPanel.Handle);
  end else
  begin
    EMailPanel.Font.Style := [];
    EMailPanel.Font.Color := clBlue;
    ReleaseCapture;
  end;
end;

procedure TMainForm.URLPanelMouseMove(Sender: TObject; Shift: TShiftState;
  X, Y: Integer);
begin
  if (X >=0) and (X < URLPanel.Width) and (Y >=0) and (Y < URLPanel.Height) then
  begin
    URLPanel.Font.Style := [fsUnderline];
    URLPanel.Font.Color := clRed;
    SetCapture(URLPanel.Handle);
  end else
  begin
    URLPanel.Font.Style := [];
    URLPanel.Font.Color := clBlue;
    ReleaseCapture;
  end;
end;


procedure TMainForm.WizardCtrlHelpClick(Sender: TObject);
begin
  ShowOptionForm;
end;

end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美日韩精品一区二区三区四区| 韩国女主播一区二区三区| 岛国av在线一区| 欧美一级片在线看| 久久成人18免费观看| 日韩丝袜美女视频| 激情伊人五月天久久综合| 久久久久亚洲蜜桃| 99久久精品免费看国产免费软件| 1024成人网| 欧美老年两性高潮| 久久99国产精品免费| 日本一区二区三区在线不卡| 99国产欧美另类久久久精品| 国产精品久久久久精k8| 91久久一区二区| 另类成人小视频在线| 日本一二三四高清不卡| 一本色道综合亚洲| 日韩国产一二三区| 国产精品麻豆网站| 欧洲一区二区三区在线| 免费在线看成人av| 中文字幕第一页久久| 在线观看中文字幕不卡| 日本强好片久久久久久aaa| www激情久久| 91黄色在线观看| 久久66热re国产| 中文字幕在线播放不卡一区| 欧美日韩一区高清| 国产一区视频在线看| 亚洲乱码国产乱码精品精98午夜| 69p69国产精品| 国产成人免费视频网站| 亚洲国产精品久久艾草纯爱| 欧美精品一区二区三区蜜桃| 99re这里只有精品视频首页| 老司机精品视频在线| 中文字幕在线一区| 717成人午夜免费福利电影| 成人激情动漫在线观看| 日韩电影在线免费观看| 亚洲欧美视频一区| 久久精品男人天堂av| 欧美视频在线观看一区二区| 99热这里都是精品| 久久精品国产成人一区二区三区 | 国产在线精品视频| 一区二区成人在线| 国产精品午夜久久| 欧美精品一区二区三区很污很色的| 欧美影院精品一区| 97久久超碰精品国产| 日韩精品一二三| 亚洲一二三四区不卡| 国产精品蜜臀在线观看| 精品国免费一区二区三区| 欧美三级电影精品| 91亚洲永久精品| 成人三级在线视频| 国产精品一区二区黑丝| 蜜臀av性久久久久蜜臀aⅴ四虎 | 69久久99精品久久久久婷婷| 色8久久人人97超碰香蕉987| 东方aⅴ免费观看久久av| 久久精品国产秦先生| 亚洲18女电影在线观看| 亚洲综合色婷婷| 亚洲一区在线视频| 自拍偷拍国产精品| 国产精品网曝门| 久久精品日产第一区二区三区高清版 | 欧洲色大大久久| 成人av免费观看| 成人免费va视频| 国产精品系列在线播放| 激情综合网激情| 国产真实乱偷精品视频免| 热久久免费视频| 久久99精品国产麻豆婷婷| 免费视频最近日韩| 久久国产精品99久久人人澡| 精品一区二区影视| 国产一区二区三区久久久 | 国产精品理伦片| 国产精品午夜春色av| 日本一区二区三区高清不卡| 国产色一区二区| 最新国产精品久久精品| 自拍偷拍亚洲欧美日韩| 亚洲男人的天堂一区二区| 亚洲自拍偷拍九九九| 亚洲成人av一区二区| 日韩精品91亚洲二区在线观看| 美女性感视频久久| 国产一二精品视频| 成人精品一区二区三区中文字幕 | 国产福利视频一区二区三区| 国产成人av电影在线观看| 成人av网站在线观看免费| 成人综合在线网站| 91丨九色丨尤物| 欧美乱妇15p| 欧美成人一区二区三区| 国产日韩欧美综合在线| 亚洲精品中文在线影院| 午夜影视日本亚洲欧洲精品| 国产在线视频精品一区| av在线不卡观看免费观看| 欧美日韩一区精品| 欧美国产亚洲另类动漫| 亚洲国产一区二区在线播放| 精品一区二区久久| 色菇凉天天综合网| 日韩一级片网站| 亚洲日本成人在线观看| 天天影视网天天综合色在线播放| 精品中文字幕一区二区小辣椒| aaa欧美日韩| 欧美一级二级三级乱码| 国产精品天干天干在观线| 香蕉久久一区二区不卡无毒影院| 韩日av一区二区| 日本高清成人免费播放| 欧美大片在线观看| 亚洲另类在线一区| 国产一区二区在线观看视频| 在线中文字幕不卡| 久久精品视频一区二区三区| 日韩电影在线免费观看| 99re热这里只有精品免费视频| 欧美精品久久天天躁| 国产精品电影一区二区| 老司机精品视频在线| 欧美性xxxxxxxx| 中文字幕精品三区| 久久精品国产精品亚洲精品| 欧美三级韩国三级日本三斤| 日本一区二区电影| 精品一区二区免费| 制服丝袜亚洲色图| 亚洲乱码国产乱码精品精可以看| 国产成人三级在线观看| 精品国产一区二区国模嫣然| 亚洲国产精品一区二区www| www.欧美日韩| 国产午夜精品理论片a级大结局 | 男人操女人的视频在线观看欧美| 91浏览器在线视频| 国产日韩欧美精品一区| 国产一区欧美二区| 精品黑人一区二区三区久久| 婷婷国产在线综合| 欧美在线观看视频一区二区| 亚洲色图在线看| 99re免费视频精品全部| 国产欧美日韩激情| 国产成人午夜视频| 国产亚洲欧美色| 国产成人精品免费网站| 久久久久免费观看| 国产精品一区一区| 国产午夜精品一区二区| 国产精品一区二区三区四区| 久久免费午夜影院| 国产在线视频精品一区| 精品国产欧美一区二区| 韩国女主播一区| 欧美国产欧美亚州国产日韩mv天天看完整 | 国产日韩欧美电影| 国产成人日日夜夜| 最新国产精品久久精品| 97久久人人超碰| 亚洲一区在线看| 欧美日韩二区三区| 免费xxxx性欧美18vr| 欧美一区二区性放荡片| 奇米精品一区二区三区四区 | 国产欧美一区二区三区网站| 极品少妇一区二区三区精品视频 | 欧美午夜精品久久久久久孕妇 | 日韩一区二区麻豆国产| 亚洲aⅴ怡春院| 91精品国产福利在线观看| 久国产精品韩国三级视频| 欧美大胆一级视频| 国产精品一区2区| 中文字幕在线一区免费| 美女视频黄免费的久久| 日韩亚洲欧美一区| 国产成人免费视频| ㊣最新国产の精品bt伙计久久| 欧美私人免费视频| 蜜臀久久99精品久久久久宅男| 欧美mv日韩mv国产网站app| 国产99久久久精品| 亚洲免费观看高清完整版在线| 欧美日韩mp4| 国产99久久精品|