VB6 / VBA - CommonDialogコントロール

Visual BasicアプリケーションまたはVBAは、日々のニーズを満たすカスタムツールを作成するための柔軟な環境を提供します。 VBAは、最小限の労力で膨大な量の計算を実行する方法を提供するだけでなく、コードの実行の特定の段階にユーザー入力組み込む方法も提供します。 ユーザー入力を組み込むそのような方法の1つは、CommonDialogコントロールを使用することです。 CommonDialogコントロールは、ユーザーが特定の入力を与え、それらの入力に条件付きのコードを実行することを可能にします。

CommonDialogコントロールのさまざまな機能

これらはすべての関数で使われているわけではありませんが、利用可能なすべての定数のリストです。

CommonDialogで利用可能な機能

  • ダイアログボックス>ファイルを開く
  • ダイアログボックス>名前を付けて保存
  • ダイアログボックス>印刷
  • ダイアログボックス>ポリシーを選択する

入門

フォーム>名前=ダイアログ

CommonDialogコントロール>名前= CMDialog1

Button1> Caption =ファイルを開く

CommandX_Click()> Ret = cmd_Openのコード

Button2>キャプション=名前を付けて保存

ClicのコードRet = cmd_Open()

ボタン3>キャプション=印刷

CommandX_Click()> Ret = cmd_Print()のコード

ボタン4>キャプション=ポリシー

CommandX_Click()> Ret = cmd_Policy()のコード

標準モジュールの例

 オプション明示的なパブリックフィルタ1文字列としてパブリックフィルタ2文字列としてパブリックフィルタ3文字列としてパブリックフィルタ4文字列としてパブリックフィルタ5文字列としてパブリックフィルタ7文字列としてパブリック定数DLG_FILE_OPEN = 1パブリック定数DLG_FILE_SAVE = 2パブリック定数DLG_COLOR = 3パブリック定数DLG_FONT = 4公開定数DLG_Print = 5公開定数DLG_HELP = 6 'ファイルを開く/保存するダイアログのフラグ公開定数OFN_READONLY =&H1&公開定数OFN_OVERWRITEPROMPT =&H2&公開定数OFN_HIDEREADONLY =&H4&公開定数OFN&NOH&&H&&H H100&公共のConst OFN_ALLOWMULTISELECT =&H200&公共のConst OFN_EXTENSIONDIFFERENT =&H400&公共のConst OFN_PATHMUSTEXIST =&H800&公共のConst OFN_FILEMUSTEXIST =&H1000&公共のConst OFN_CREATEPROMPT =&H2000&公共のConst OFN_SHAREAWARE =&H4000&公共のConst OFN_NOREADONLYRETURN =&H8000&&「カラーダイアログフラグ公共のConst CC_RGBINIT = H1&&公共のConst CC_FULLOPEN =&H2&公開定数CC_PR EVENTFULLOPEN =&H4&Public Const CC_SHOWHELP =&H8& 'フォントダイアログフラグPublic Const CF_SCREENFONTS =&H1&Public Const CF_PRINTERFONTS =&H2&Public Const CF_BOTH =&H3&Public Const =&H200&公共のConst CF_ANSIONLY =&H400&公共のConst CF_NOVECTORFONTS =&H800&公共のConst CF_NOSIMULATIONS =&H1000&公共のConst CF_LIMITSIZE =&H2000&公共のConst CF_FIXEDPITCHONLY =&H4000&公共のConst CF_WYSIWYG =&H8000&「もCF_SCREENFONTS&CF_PRINTERFONTS公共のConst CF_FORCEFONTEXIST =&H10000公共のConst CF_SCALABLEONLY =&H20000公開を持っている必要があります定数CF_TTONLY =&H40000公開定数CF_NOFACESEL =&H80000公開定数CF_NOSTYLESEL =&H100000公開定数CF_NOSIZESEL =&H200000 'プリンタダイアログフラグ公開定数PD_ALLPAGES =&H0&公開定数PD_SELECTION =&H1&公開定数PD_PAGENUMS&H2 ICのConst PD_NOPAGENUMS =&H8&公共のConst PD_COLLATE =&H10&公共のConst PD_PRINTTOFILE =&H20&公共のConst PD_PRINTSETUP =&H40&公共のConst PD_NOWARNING =&H80&公共のConst PD_RETURNDC =&H100&公共のConst PD_RETURNIC =&H200&公共のConst PD_RETURNDEFAULT =&H400&公共のConst PD_SHOWHELP =&H800&公共のConst PD_USEDEVMODECOPIES =&H40000パブリック定数PD_DISABLEPRINTTOFILE =&H80000パブリック定数PD_HIDEPRINTTOFILE =&H100000 'ヘルプ定数パブリック定数HELP_CONTEXT =&H1'トピックをトピック内に表示ヘルプの使用方法に関するヘルプを表示するPublic Const HELP_SETINDEX =&H5 'マルチインデックスヘルプの現在のインデックスを設定するPublic Const HELP_SETCONTENTS =&H5 Public Const HELP_CONTEXTPOPUP =&H8 Public Const HELP_FORCEFILE =&H9 Public Const HELP_KEY =&H101 &H102パブリックコンスタント HELP_PARTIALKEY =&H105 'winhelpで検索エンジンを呼び出す関数文字列としてadd(a $)a $ ""ならa $ = a $ + "|" add = a $ End Function 'コマンドライン...' FileName = cmd_open() 'フィルタが1つ以上の場合>> FileName = cmd_open( "txt")'複数のフィルタがある場合、filter1を4に初期化するルーチンはすべてのフィルタを追加します。 (省略可能Filt1を文字列として)文字列として薄いCTRL $、a $、b $、F1 $、F2 $、F3 $、F4 $ CTRL $ = Chr $(13)+ Chr $(10)ならばFilt1 ""それから$ = "File(*。"&Filt1& ")| *。" &Filt1 End If If Filter1 ""その後、$ = add(a $)a $ = a $ + "File(*。"&Filter1& ")| *。" &Filter1 Filter1 = ""フィルタ2の場合は終了 ""その後、$ = add(a $)a $ = a $ + "ファイル(*。"&Filter2& ")| *。" &Filter2 Filter2 = "" Filter3の場合は終了 "その後、$ = add(a $)a $ = a $ +" File(*。 "&Filter3&")| *。 " &Filter3 Filter 3 = "" Filter 4の場合は終了 ""その後、$ = add(a $)a $ = a $ + "ファイル(*。"&Filter 4& ")| *。" &Filter4 Filter4 = "" End $ = add(a $)a $ = a $ +の場合All(*。*)| *。* "Dialog.CMDialog1.Filter = a $ Dialog.CMDialog1.FilterIndex = 1ダイアログ.CMDialog1.FLAGS = CF_EFFECTSまたはOFN_HIDEREADONLYまたはCF_ANSIONLY Dialog.CMDialog1.Action = DLG_FILE_OPEN cmd_open = Dialog.CMDialog1.FileNameダイアログ終了機能のアンロードCF_BOTH + CF_SCALABLEONLY Dialog.CMDialog1.Action = DLG_FONT FILTER1 = Dialog.CMDialog1.FontName Filter4 = Dialog.CMDialog1.FontSize Filter5 = Dialog.CMDialog1.FontBold Filter6 = Dialog.CMDialog1.FontItalic cmd_Policy = Dialog.CMDialog1.FontNameエンド機能機能cmd_Print( Dialog.CMDialog1.FLAGS = PD_ALLPAGES Dialog.CMDialog1.Min = 1 Dialog.CMDialog1.FromPage = 1 Dialog.CMDialog1.ToPage = 100 Dialog.CMDialog1.Action = DLG_Printダイアログをアンロードする終了関数Filt1 = 'eg:TXT ou EXE'ルーチンで検索されるファイル拡張子は、すべてのフィルタを追加します(*。*) 関数cmd_SaveAs(文字列としてのFilt1)文字列としてのFilter1 = "File(*。"&Filt1& ")| "&Filt1 Filter2 =" All(*。*)| Dialog.CMDialog1.Filter = Filter1 + "|" + Filter2 Dialog.CMDialog1.FilterIndex = 1 Dialog.CMDialog1.FLAGS = OFN_HIDEREADONLY Dialog.CMDialog1.Action = DLG_FILE_SAVE cmd_SaveAs = Dialog.CMDialog1.FileNameアンロード 
前の記事 次の記事

トップのヒント