MQWindowBaseクラス

(new in Rev4.00)

MQWindowBase クラスはウィンドウ・ダイアログ共通のベースクラスです。MQWidgetBaseクラスを継承しています。

継承元クラスで定義されるメンバ関数はそのクラスの記述を参照してください。

クラス
MQWindowBase コンストラクタ
~MQWindowBase デストラクタ
メンバ関数
AddChildWindow 子ウィンドウの追加
RemoveChildWindow 子ウィンドウの削除
CreateHorizontalFrame 水平フレームの作成
CreateVerticalFrame 垂直フレームの作成
CreateDockFrame ドックフレームの作成
CreateMenuBar メニューバーの作成
CreateGroupBox グループボックスの作成
CreateTab タブの作成
CreateButton ボタンの作成
CreateCheckBox チェックボックスの作成
CreateRadioButton ラジオボタンの作成
CreateComboBox コンボボックスの作成
CreateListBox リストボックスの作成
CreateLabel ラベルの作成
CreateEdit テキスト入力の作成
CreateMemo 複数行テキスト入力の作成
CreateSpinBox 数値入力の作成
CreateDoubleSpinBox 実数数値入力の作成
CreateSlider スライダーの作成
CreateScrollBar スクロールバーの作成
CreateScrollBox スクロールボックスの作成
CreateColorPanel カラーパネルの作成
CreatePaintBox 描画領域の作成
DeleteWidget ウィジェットの削除
SetModal モーダル状態の設定
ReleaseModal モーダル状態の解除
IsModal モーダル状態の取得
GetTitle タイトル文字列の取得
SetTitle タイトル文字列の設定
GetPosX X位置の取得
SetPosX X位置の設定
GetPosY Y位置の取得
SetPosY Y位置の設定
GetWindowFrame ウィンドウ枠表示の取得
SetWindowFrame ウィンドウ枠表示の設定
GetTitleBar タイトルバー表示の取得
SetTitleBar タイトルバー表示の設定
GetCanResize ウィンドウサイズ変更可否の取得
SetCanResize ウィンドウサイズ変更可否の設定
GetCloseButton 閉じるボタン表示の取得
SetCloseButton 閉じるボタン表示の設定
GetMaximizeButton 最大化ボタン表示の取得
SetMaximizeButton 最大化ボタン表示の設定
GetMinimizeButton 最小化ボタン表示の取得
SetMinimizeButton 最小化ボタン表示の設定
GetMaximized 最大化状態の取得
SetMaximized 最大化状態の設定
GetMinimized 最小化状態の取得
SetMinimized 最小化状態の設定
GetBackColor 背景色の取得
SetBackColor 背景色の設定
GetAlphaBlend αブレンド値の取得
SetAlphaBlend αブレンド値の設定
GetAcceptDrops ファイルのドロップ許可の取得
SetAcceptDrops ファイルのドロップ許可の設定
ExecuteMenuShortcut メニューショートカットの実行
イベント
AddDragOverEvent ファイルのドラッグ中のイベントを追加
AddDropFilesEvent ファイルがドロップされた時のイベントを追加

MQWindowBase::MQWindowBase();

MQWindowBase::MQWindowBase(int id);

id
プラグイン外で生成されたウィジェットのID

コンストラクタです。

protected指定されており、直接生成することはできません。


virtual MQWindowBase::~MQWindowBase();

デストラクタです。仮想関数として定義されます。


void MQWindowBase::AddChildWindow(MQWindowBase *child);

child
子ウィンドウ

子ウィンドウを追加します。

子ウィンドウは常に親ウィンドウよりも手前に表示されます。


void MQWindowBase::RemoveChildWindow(MQWindowBase *child);

child
子ウィンドウ

子ウィンドウを親ウィンドウから切り離します。

切り離された子ウィンドウはデスクトップ上に表示されます。


MQFrame *MQWindowBase::CreateHorizontalFrame(MQWidgetBase *parent);

parent
親ウィジェット
戻り値
作成されたフレーム

指定した親ウィジェットの子ウィジェットとして水平方向のフレームを作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQFrame *MQWindowBase::CreateVerticalFrame(MQWidgetBase *parent);

parent
親ウィジェット
戻り値
作成されたフレーム

指定した親ウィジェットの子ウィジェットとして垂直方向のフレームを作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQDockFrame *MQWindowBase::CreateDockFrame(MQWidgetBase *parent);

parent
親ウィジェット

(new in Rev4.60)

指定した親ウィジェットの子ウィジェットとしてドックフレームを作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQMenuBar *MQWindowBase::CreateMenuBar(MQWidgetBase *parent);

parent
親ウィジェット

(new in Rev4.60)

指定した親ウィジェットの子ウィジェットとしてメニューバーを作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQGroupBox *MQWindowBase::CreateGroupBox(MQWidgetBase *parent, const std::wstring& str = std::wstring());

parent
親ウィジェット
str
グループボックスのタイトル文字列
戻り値
作成されたグループボックス

指定した親ウィジェットの子ウィジェットとしてグループボックスを作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQTab *MQWindowBase::CreateTab(MQWidgetBase *parent);

parent
親ウィジェット
戻り値
作成されたタブ

指定した親ウィジェットの子ウィジェットとしてタブを作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQButton *MQWindowBase::CreateButton(MQWidgetBase *parent, const std::wstring& str = std::wstring());

parent
親ウィジェット
戻り値
作成されたボタン

指定した親ウィジェットの子ウィジェットとしてボタンを作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQCheckBox *MQWindowBase::CreateCheckBox(MQWidgetBase *parent, const std::wstring& str = std::wstring());

parent
親ウィジェット
戻り値
作成されたチェックボックス

指定した親ウィジェットの子ウィジェットとしてチェックボックスを作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQRadioButton *MQWindowBase::CreateRadioButton(MQWidgetBase *parent, const std::wstring& str = std::wstring());

parent
親ウィジェット
戻り値
作成されたラジオボタン

指定した親ウィジェットの子ウィジェットとしてラジオボタンを作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQComboBox *MQWindowBase::CreateComboBox(MQWidgetBase *parent);

parent
親ウィジェット
戻り値
作成されたコンボボックス

指定した親ウィジェットの子ウィジェットとしてコンボボックスを作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQListBox *MQWindowBase::CreateListBox(MQWidgetBase *parent);

parent
親ウィジェット
戻り値
作成されたリストボックス

指定した親ウィジェットの子ウィジェットとしてリストボックスを作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQLabel *MQWindowBase::CreateLabel(MQWidgetBase *parent, const std::wstring& str = std::wstring());

parent
親ウィジェット
戻り値
作成されたラベル

指定した親ウィジェットの子ウィジェットとしてラベルを作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQEdit *MQWindowBase::CreateEdit(MQWidgetBase *parent, const std::wstring& str = std::wstring());

parent
親ウィジェット
戻り値
作成されたテキスト入力

指定した親ウィジェットの子ウィジェットとしてテキスト入力を作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQMemo *MQWindowBase::CreateMemo(MQWidgetBase *parent);

parent
親ウィジェット
戻り値
作成された複数行テキスト入力

指定した親ウィジェットの子ウィジェットとして複数行テキスト入力を作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQSpinBox *MQWindowBase::CreateSpinBox(MQWidgetBase *parent);

parent
親ウィジェット
戻り値
作成されたスピンボックス

指定した親ウィジェットの子ウィジェットとしてスピンボックス(数値入力欄)を作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQDoubleSpinBox *MQWindowBase::CreateDoubleSpinBox(MQWidgetBase *parent);

parent
親ウィジェット
戻り値
作成された実数スピンボックス

指定した親ウィジェットの子ウィジェットとして実数スピンボックス(数値入力欄)を作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQSlider *MQWindowBase::CreateSlider(MQWidgetBase *parent);

parent
親ウィジェット
戻り値
作成されたスライダー

指定した親ウィジェットの子ウィジェットとしてスライダーを作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQScrollBar *MQWindowBase::CreateScrollBar(MQWidgetBase *parent);

parent
親ウィジェット
戻り値
作成されたスクロールバー

指定した親ウィジェットの子ウィジェットとしてスクロールバーを作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQScrollBox *MQWindowBase::CreateScrollBox(MQWidgetBase *parent);

parent
親ウィジェット
戻り値
作成されたスクロールボックス

指定した親ウィジェットの子ウィジェットとしてスクロールボックスを作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQColorPanel *MQWindowBase::CreateColorPanel(MQWidgetBase *parent);

parent
親ウィジェット
戻り値
作成されたカラーパネル

指定した親ウィジェットの子ウィジェットとしてカラーパネルを作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


MQPaintBox *MQWindowBase::CreatePaintBox(MQWidgetBase *parent);

parent
親ウィジェット
戻り値
作成された描画領域

指定した親ウィジェットの子ウィジェットとして描画領域を作成します。

この関数で作成したウィジェットを削除する場合はdeleteではなくDeleteWidget()を呼び出す必要があります。


void MQWindowBase::DeleteWidget(MQWidgetBase *widget);

widget
ウィジェット

MQWindowBase内の各Create関数で作成された子ウィジェットを削除します。


void MQWindowBase::SetModal();

ウィンドウにモーダル状態を設定します。モーダル状態になると、他のウィンドウへの操作は無効となり、このウィンドウへの操作のみを行うことができます。


void MQWindowBase::ReleaseModal();

ウィンドウのモーダル状態を解除します。


bool MQWindowBase::IsModal();

戻り値
モーダル状態

ウィンドウにモーダル状態が設定されているかどうかを取得します。


std::wstring MQWindowBase::GetTitle();

戻り値
タイトルの文字列

タイトルバーなどに表示される文字列を取得します。


void MQWindowBase::SetTitle(const std::wstring& text);

text
タイトルの文字列

タイトルバーなどに表示される文字列を設定します。


int MQWindowBase::GetPosX();

戻り値
X座標

(new in Rev4.10)

ウィンドウの位置のX座標を取得します。


void MQWindowBase::SetPosX(int value);

value
X座標

(new in Rev4.10)

ウィンドウの位置のX座標を設定します。


int MQWindowBase::GetPosY();

戻り値
Y座標

(new in Rev4.10)

ウィンドウの位置のY座標を取得します。


void MQWindowBase::SetPosY(int value);

value
Y座標

(new in Rev4.10)

ウィンドウの位置のY座標を設定します。


bool MQWindowBase::GetWindowFrame();

戻り値
ウィンドウ枠の表示状態

ウィンドウの外枠の表示状態を取得します。

Windowsのウィンドウ表示の仕様により、この値に関わらず他の表示状態との組み合わせにより実際の表示と異なる場合があります。


void MQWindowBase::SetWindowFrame(bool value);

value
ウィンドウ枠の表示状態

ウィンドウの外枠の表示状態を設定します。


bool MQWindowBase::GetTitleBar();

戻り値
タイトルバーの表示状態

ウィンドウ上部のタイトルバーの表示状態を取得します。

Windowsのウィンドウ表示の仕様により、この値に関わらず他の表示状態との組み合わせにより実際の表示と異なる場合があります。


void MQWindowBase::SetTitleBar(bool value);

value
タイトルバーの表示状態

ウィンドウ上部のタイトルバーの表示状態を設定します。


bool MQWindowBase::GetCanResize();

戻り値
ウィンドウのリサイズの可否

ウィンドウ外枠をドラッグしてウィンドウのサイズを変更が可能かどうかを取得します。


void MQWindowBase::SetCanResize(bool value);

value
ウィンドウのリサイズの可否

ウィンドウ外枠をドラッグしてウィンドウのサイズを変更が可能かどうかを設定します。


bool MQWindowBase::GetCloseButton();

戻り値
閉じるボタンの表示状態

ウィンドウ右上の閉じるボタンの表示状態を取得します。

Windowsのウィンドウ表示の仕様により、この値に関わらず他の表示状態との組み合わせにより実際の表示と異なる場合があります。


void MQWindowBase::SetCloseButton(bool value);

value
閉じるボタンの表示状態

ウィンドウ右上の閉じるボタンの表示状態を設定します。


bool MQWindowBase::GetMaximizeButton();

戻り値
最大化ボタンの表示状態

ウィンドウ右上の最大化ボタンの表示状態を取得します。

Windowsのウィンドウ表示の仕様により、この値に関わらず他の表示状態との組み合わせにより実際の表示と異なる場合があります。


void MQWindowBase::SetMaximizeButton(bool value);

value
最大化ボタンの表示状態

ウィンドウ右上の最大化ボタンの表示状態を設定します。


bool MQWindowBase::GetMinimizeButton();

戻り値
最小化ボタンの表示状態

ウィンドウ右上の最小化ボタンの表示状態を取得します。

Windowsのウィンドウ表示の仕様により、この値に関わらず他の表示状態との組み合わせにより実際の表示と異なる場合があります。


void MQWindowBase::SetMinimizeButton(bool value);

value
最小化ボタンの表示状態

ウィンドウ右上の最小化ボタンの表示状態を設定します。


bool MQWindowBase::GetMaximized();

戻り値
ウィンドウの最大化状態

ウィンドウが最大化されているかどうかを取得します。


void MQWindowBase::SetMaximized(bool value);

value
ウィンドウの最大化状態

ウィンドウを最大化するかどうかを設定します。


bool MQWindowBase::GetMinimized();

戻り値
ウィンドウの最小化状態

ウィンドウが最小化されているかどうかを取得します。


void MQWindowBase::SetMinimized(bool value);

value
ウィンドウの最小化状態

ウィンドウを最小化するかどうかを設定します。


void MQWindowBase::GetBackColor(int& r, int& g, int& b);

MQCanvasColor MQWindowBase::GetBackColor() const;

r
赤 [0:255]
g
緑 [0:255]
b
青 [0:255]

背景色を取得します。


void MQWindowBase::SetBackColor(int r, int g, int b);

void MQWindowBase::SetBackColor(MQCanvasColor col) const;

r
赤 [0:255]
g
緑 [0:255]
b
青 [0:255]

背景色を設定します。


int MQWindowBase::GetAlphaBlend();

戻り値
αブレント値 [0:255]

半透明ウィンドウ表示のためのαブレント値を取得します。


void MQWindowBase::SetAlphaBlend(int value);

value
αブレント値 [0:255]

半透明ウィンドウ表示のためのαブレント値を設定します。


bool MQWindowBase::GetAcceptDrops();

戻り値
ファイルのドロップ許可

(new in Rev4.43)

エクスプローラからのファイルのドラッグ&ドロップを許可するかどうかを取得します。


void MQWindowBase::SetAcceptDrops(bool value);

value
ファイルのドロップ許可

(new in Rev4.43)

エクスプローラからのファイルのドラッグ&ドロップを許可するかどうかを設定します。

ドラッグドロップが許可されない状態ではAddDragOverEvent()やAddDropFilesEvent()によるイベントは発生しません。


bool MQWindowBase::ExecuteMenuShortcut(MQWidgetKeyParam& param)

param
マウスとキーボードのパラメータ

(new in Rev4.60)

指定したパラメータのメニューショートカットを実行します。


template<typename T> void MQWindowBase::AddDragOverEvent(T *p, BOOL (T::*f)(MQWidgetBase*, MQDocument, MQWidgetDragOverParam&), bool prior = false);

p
イベント通知先のウィジェット
f
イベント通知先のメンバ関数
prior
イベントの通知順序
[true] 最初に通知されるよう指定
[false] 最後に通知されるよう指定

(new in Rev4.43)

ファイルのドラッグ中にウィンドウ上へマウスが移動したときに発生されるイベントを追加します。

通知先のメンバ関数 f は以下の引数・戻り値を持ったものである必要があります。

 

BOOL T::f(MQWidgetBase* sender, MQDocument doc, MQWidgetDragOverParam& param);

sender
イベント通知元のウィジェット
doc
ドキュメント
param
イベント発生時のパラメータ(下記参照)
戻り値
[TRUE] ドキュメントに何らかの変更が行われた
[FALSE] ドキュメントは何も変更されなかった

struct MQWidgetDragOverParam {
	POINT ClientPos;
	POINT ScreenPos;
	bool Result;
};
ClientPos
クライアント座標でのマウスカーソル位置
ScreenPos
スクリーン座標でのマウスカーソル位置
Result
ドロップを許可するかどうかを指定します(出力用)

template<typename T> void MQWindowBase::AddDropFilesEvent(T *p, BOOL (T::*f)(MQWidgetBase*, MQDocument, MQWidgetDropFilesParam&), bool prior = false);

p
イベント通知先のウィジェット
f
イベント通知先のメンバ関数
prior
イベントの通知順序
[true] 最初に通知されるよう指定
[false] 最後に通知されるよう指定

(new in Rev4.43)

ファイルがドロップされたときに発生されるイベントを追加します。

通知先のメンバ関数 f は以下の引数・戻り値を持ったものである必要があります。

 

BOOL T::f(MQWidgetBase* sender, MQDocument doc, MQWidgetDropFilesParam& param);

sender
イベント通知元のウィジェット
doc
ドキュメント
param
イベント発生時のパラメータ(下記参照)
戻り値
[TRUE] ドキュメントに何らかの変更が行われた
[FALSE] ドキュメントは何も変更されなかった

struct MQWidgetDropFilesParam {
	POINT ClientPos;
	POINT ScreenPos;
	std::vector<const wchar_t*> Files;
};
ClientPos
クライアント座標でのマウスカーソル位置
ScreenPos
スクリーン座標でのマウスカーソル位置
Files
各ファイルのファイル名へのポインタ