2024/06/03 電子書籍「電子書籍出版・技術文書作成を劇的に加速!秀丸エディタ + Markdown + Pandocの驚異」を出版

入力用ダイアログボックスについて

C++Builder

InputBox

C++Builderは、標準で文字列の入力用のInputBox関数が要されています。

InputBoxは、文字列、実数、整数のいずれかをユーザーが入力できる入力ダイアログ ボックスを表示します。ダイアログを終了するために、 [キャンセル] ボタン(または Esc キー)を選択したときに、デフォルト値を使用する必要がある場合に IInputBox 関数を使用します。

  • プロトタイプ宣言
extern DELPHI_PACKAGE System::UnicodeString __fastcall InputBox(
									const System::UnicodeString ACaption, 
									const System::UnicodeString APrompt, 
									const System::UnicodeString ADefault);
  • ヘッダファイル
#include <Vcl.Dialogs.hpp>
  • 引数
引数説明
ACaptionダイアログ ボックスのキャプションです。
APrompt編集ボックスにユーザーが入力するテキストです。
ADefaultダイアログ ボックスが最初に表示されたときに、編集ボックスに表示される値です。
  • リターン

ユーザーが [キャンセル] ボタンを選択すると、InputBox はデフォルト値を返します。 ユーザーが [OK] ボタンを選択すると、InputBox は編集ボックスの値を返します。

ダイアログを終了するためにユーザーが [キャンセル] ボタン(または Esc キー)を選択したときに、デフォルト値を使用する必要がある場合に InputBox 関数を使用します。 ユーザーが [OK] または [キャンセル] を選択したかどうかを、アプリケーションで認識する必要がある場合は、InputQuery 関数を代わりに使用します。

void __fastcall TForm1::Button1Click(TObject *Sender)
{
  String InputString = InputBox(L"Input Box", L"Prompt", L"Default 文字列です!!");
  Edit1->Text = InputString;	
}
  • 実行結果
Vcl.Dialogs.InputBox - RAD Studio API Documentation

InputQuery

文字列、実数、整数のいずれかをユーザーが入力できる入力ダイアログ ボックスを表示します。

InputQuery では、ユーザーが [OK] を選択したときに true、[キャンセル] を選択したとき、または Esc キーを押したときに false が返ります。

ユーザーがダイアログをキャンセルしたときに、デフォルト値を使用する必要がある場合は、InputBox を代わりに使用します。

  • プロトタイプ宣言
extern DELPHI_PACKAGE bool __fastcall InputQuery(const System::UnicodeString ACaption, 
										const System::UnicodeString *APrompts, 
										const System::NativeInt APrompts_High, 
										System::UnicodeString *AValues, 
										const System::NativeInt AValues_High, 
										_di_TInputCloseQueryFunc CloseQueryFunc = _di_TInputCloseQueryFunc())/* overload */;

extern DELPHI_PACKAGE bool __fastcall InputQuery(const System::UnicodeString ACaption, 
										const System::UnicodeString *APrompts, 
										const System::NativeInt APrompts_High, 
										System::UnicodeString *AValues, 
										const System::NativeInt AValues_High, 
										TInputCloseQueryEvent CloseQueryEvent, 
										System::TObject* Context = (System::TObject*)(0x0))/* overload */;

extern DELPHI_PACKAGE bool __fastcall InputQuery(const System::UnicodeString ACaption, 
										const System::UnicodeString APrompt, 
										System::UnicodeString &Value)/* overload */;
  • ヘッダファイル
#include <Vcl.Dialogs.hpp>
  • 3番目のプロトタイプの引数
引数説明
ACaptionダイアログ ボックスのキャプションです。
APrompt編集ボックスにユーザーが入力するテキストです。
Valueダイアログ ボックスが最初に表示されたときに、編集ボックスに表示される値です。ユーザーが入力した値が返ります。
  • リターン

 [OK] を選択したときに true、[キャンセル] を選択したとき、または Esc キーを押したときに false が返ります。

  • サンプルコード
	String InputString	= L"Default 文字列です!!";
	if(InputQuery(L"Input Box", L"Prompt", InputString))
	{
		Memo1->Lines->Add(InputString);
    }
  • 実行結果
Vcl.Dialogs.InputQuery - RAD Studio API Documentation

ダイアログ サポート ルーチン

以下に、すべてのダイアログ サポート ルーチンの一覧を示します。

ルーチン説明
Vcl.Dialogs.CreateMessageDialog指定されたメッセージ ダイアログを作成します。
Vcl.Dialogs.InputBox文字列、実数、整数のいずれかをユーザーが入力できる入力ダイアログ ボックスを表示します。
Vcl.Dialogs.InputQuery文字列、実数、整数のいずれかをユーザーが入力できる入力ダイアログ ボックスを表示します。
Vcl.Controls.IsAbortResultモーダル フォーム ダイアログからの戻り値を調べ、[中止]または[キャンセル]をユーザーが選択したかどうかを示します。
Vcl.Controls.IsAnAllResultモーダル フォーム ダイアログからの戻り値を調べ、[すべて]、[すべてはい]、[すべていいえ]のいずれかをユーザーが選択したかどうかを示します。
Vcl.Controls.IsDragObject指定されたオブジェクトが TDragObject の下位クラスのオブジェクトかどうかを示します。
Vcl.Controls.IsNegativeResultモーダル フォーム ダイアログからの戻り値を調べ、[いいえ]または[すべていいえ]をユーザーが選択したかどうかを示します。
Vcl.Controls.IsPositiveResultモーダル フォーム ダイアログからの戻り値を調べ、[OK]、[はい]、[すべてはい]、[すべて]のいずれかをユーザーが選択したかどうかを示します。
Vcl.Controls.IsVCLControlコントロールが VCL コントロールである場合に true を返します。
Vcl.Dialogs.MessageDlg画面の中央にメッセージ ダイアログ ボックスを表示します。
Vcl.Dialogs.MessageDlgPos指定された画面座標の位置にメッセージ ダイアログ ボックスを表示します。
Vcl.Dialogs.MessageDlgPosHelp指定されたヘルプ ファイルにヘルプが記載されているメッセージ ダイアログ ボックスを表示します。
Vcl.Dialogs.PromptForFileName[ファイルを開く]ダイアログまたは[名前を付けて保存]ダイアログを表示して、ユーザーがファイル名を指定できるようにします。
Vcl.Dialogs.ShowMessage[OK]ボタンの付いたメッセージ ボックスを表示します。
Vcl.Dialogs.ShowMessageFmt書式付きメッセージのメッセージ ボックスを表示します。
Vcl.Dialogs.ShowMessagePos指定された位置にメッセージ ボックスを表示します。
Vcl.Dialogs.TaskMessageDlg画面の中央にメッセージ タスク ダイアログ ボックスを表示します。
Vcl.Dialogs.TaskMessageDlgPos指定された画面座標の位置にメッセージ タスク ダイアログ ボックスを表示します。
Vcl.Dialogs.TaskMessageDlgPosHelp指定されたヘルプ ファイルにヘルプが記載されているメッセージ タスク ダイアログ ボックスを表示します。

タイトルとURLをコピーしました