LIBURANIA
GUI library (a wrapper of Win32 API) in C++
読み取り中…
検索中…
一致する文字列を見つけられません
公開メンバ関数 | 静的公開メンバ関数 | 限定公開メンバ関数 | 静的限定公開メンバ関数 | 限定公開変数類 | 全メンバ一覧
urania::WndBase クラスabstract

HWND管理用基底クラス [詳解]

#include <wbase.h>

urania::WndBase の継承関係図
urania::WndBase 連携図

公開メンバ関数

 WndBase () noexcept
 
virtual ~WndBase ()=default
 
void destroy ()
 ウィンドウの破棄
 
void resetTitle (const std::wstring &ttl)
 ウィンドウタイトルの變更
 
void close ()
 ウィンドウの閉止
 
void show ()
 ウィンドウの表示
 
void hide ()
 ウィンドウの隱蔽
 
void maximize ()
 ウィンドウの最大化
 
void minimize ()
 ウィンドウの最小化
 
void normalize ()
 ウィンドウの復原
 
void move (int x, int y)
 ウィンドウの移動
 
void postMessage (UINT msg, WPARAM wp, LPARAM lp)
 メッセージ送出
 
int getWidth ()
 ウィンドウ幅を取得
 
int width ()
 ウィンドウ幅の取得
 
int getHeight ()
 ウィンドウの高さを取得
 
int height ()
 ウィンドウの高さの取得
 
bool getWidthAndHeight (int &w, int &h)
 ウィンドウの幅と高さの取得
 
void enableCtrl (int id)
 コントロールの有效化
 
void disableCtrl (int id)
 コントロールの無效化
 
void createEditBox (int id, const eunomia::AnotherRect &re)
 エディットボックス生成
 
void createMultiLineEditBox (int id, const eunomia::AnotherRect &re)
 複數行エディットボックスの生成
 
void createListBox (int id, const eunomia::AnotherRect &re)
 リストボックス生成
 
void createComboBox (int id, const eunomia::AnotherRect &re)
 コンボボックス生成
 
void createPushButton (int id, const std::wstring &str, const eunomia::AnotherRect &re)
 ボタン生成
 
void createLabel (int id, const std::wstring &str, const eunomia::AnotherRect &re)
 ラベル生成
 
void createCheckBox (int id, const std::wstring &str, const eunomia::AnotherRect &re)
 チェックボックス生成
 
std::wstring getTextEB (int id)
 エディットボックスの内容の取得
 
void setEBText (int id, const std::wstring &txt)
 エディットボックスの内容の設定
 
void clearEB (int id)
 エディットボックスの内容の消去
 
void copyEB (int id)
 クリップボードへの選擇文字列のコピー
 
void cutEB (int id)
 選擇文字列のクリップボードへのコピー及び削除
 
void pasteEB (int id)
 クリップボードからの文字列のペースト
 
bool canUndoEB (int id)
 直前動作の取り消しの可否の確認
 
void undoEB (int id)
 直前動作の取り消し
 
std::wstring getLineTextEB (int id, int li)
 複數行エディットボックスからの一行の取得
 
int countLineEB (int id)
 複數行エディットボックスの行數の取得
 
std::wstring getItemLB (int id, int no)
 リストボックスの項目の取得
 
void addItemLB (int id, const std::wstring &txt)
 リストボックスへの項目の追加
 
void insertItemLB (int id, int no, const std::wstring &txt)
 リストボックスへの項目の插入
 
void deleteItemLB (int id, int no)
 リストボックスの項目の削除
 
int countItemLB (int id)
 リストボックスの項目數の取得
 
int getCurrentLB (int id)
 選擇中のリストボックスの項目番號の取得
 
void setCurrentLB (int id, int no)
 リストボックスの選擇項目の設定
 
void clearLB (int id)
 リストボックスの内容の消去
 
void dirLB (int id, const std::wstring &path, int flag)
 リストボックスへの指定ディレクトリの内容の反映
 
std::wstring getItemCB (int id, int no)
 コンボボックスの項目の取得
 
void addItemCB (int id, const std::wstring &txt)
 コンボボックスへの項目の追加
 
void insertItemCB (int id, int no, const std::wstring &txt)
 コンボボックスへの項目の插入
 
void deleteItemCB (int id, int no)
 コンボボックスの項目の削除
 
int countItemCB (int id)
 コンボボックスの項目數の取得
 
int getCurrentCB (int id)
 コンボボックスの選擇中の項目の番號の取得
 
void setCurrentCB (int id, int no)
 コンボボックスの選擇項目の設定
 
void clearCB (int id)
 コンボボックスの内容の消去
 
void dirCB (int id, const std::wstring &path, int flag)
 コンボボックスへの指定ディレクトリの内容の反映
 
bool isChecked (int id)
 チェックボックスなどのチェックの有無の取得
 
int getPosHSB ()
 水平スクロールバーの位置の取得
 
void setPosHSB (int pos)
 水平スクロールバーの位置の設定
 
void getRangeHSB (int &min, int &max, int &page)
 水平スクロールバーの範圍の取得
 
void setRangeHSB (int min, int max, int page)
 水平スクロールバーの範圍の設定
 
void enableHSB ()
 水平スクロールバーの有效化
 
void disableHSB ()
 水平スクロールバーの無效化
 
int getPosVSB ()
 垂直スクロールバーの位置の取得
 
void setPosVSB (int pos)
 垂直スクロールバーの位置の設定
 
void getRangeVSB (int &min, int &max, int &page)
 垂直スクロールバーの範圍の取得
 
void setRangeVSB (int min, int max, int page)
 垂直スクロールバーの範圍の設定
 
void enableVSB ()
 垂直スクロールバーの有效化
 
void disableVSB ()
 垂直スクロールバーの無效化
 
int getPosSB (int id)
 スクロールバーの位置の取得
 
void setPosSB (int id, int pos)
 スクロールバーの位置の設定
 
void getRangeSB (int id, int &min, int &max, int &page)
 スクロールバーの範圍の取得
 
void setRangeSB (int id, int min, int max, int page)
 スクロールバーの範圍の設定
 
void enableSB (int id)
 スクロールバーの有效化
 
void disableSB (int id)
 スクロールバーの無效化
 

静的公開メンバ関数

static HWND getHWND (const urania::WndBase *wb)
 HWNDの取得
 

限定公開メンバ関数

void link_ (HWND h)
 HWNDの強固な連結
 
void kill_ ()
 HWNDの切り離しと破棄
 
void attach_ (HWND h)
 HWNDの連結
 
void detach_ ()
 HWNDの切り離し
 
virtual void init_ (HWND)=0
 メッセージ處理系初期化
 
virtual void uninit_ ()=0
 メッセージ處理系初期化解除
 
virtual void destroyWindow_ ()=0
 ウィンドウ破棄の實處理
 
void deleting_ ()
 オブジェクト側からHWNDを破棄
 
void destroyed_ ()
 HWNDが破棄された時の後處理
 

静的限定公開メンバ関数

static HINSTANCE getHI_ ()
 派生クラスがHINSTANCEを取得するための"カプセル破り"
 

限定公開変数類

HWND hw_
 管理對象のHWND
 

詳解

HWND管理用基底クラス

WindowとDialogの基底となり、HWNDの管理や操作を行ふ。

構築子と解体子

◆ WndBase()

urania::WndBase::WndBase ( )
inlinenoexcept

◆ ~WndBase()

virtual urania::WndBase::~WndBase ( )
virtualdefault

関数詳解

◆ addItemCB()

void urania::WndBase::addItemCB ( int id,
const std::wstring & txt )
inline

コンボボックスへの項目の追加

引数
idコントロールID
txt插入する項目の文字列

◆ addItemLB()

void urania::WndBase::addItemLB ( int id,
const std::wstring & txt )
inline

リストボックスへの項目の追加

引数
idコントロールID
txt插入する項目の文字列

◆ attach_()

void urania::WndBase::attach_ ( HWND h)
inlineprotected

HWNDの連結

WndBaseオブジェクトとHWNDを結び附ける。 オブジェクト破棄時にHWNDを破棄しない。

呼び出し関係図:
被呼び出し関係図:

◆ canUndoEB()

bool urania::WndBase::canUndoEB ( int id)
inline

直前動作の取り消しの可否の確認

引数
idコントロールID
戻り値
取り消し可能であればtrue、さもなくばfalse

◆ clearCB()

void urania::WndBase::clearCB ( int id)
inline

コンボボックスの内容の消去

引数
idコントロールID

◆ clearEB()

void urania::WndBase::clearEB ( int id)
inline

エディットボックスの内容の消去

引数
idコントロールID

◆ clearLB()

void urania::WndBase::clearLB ( int id)
inline

リストボックスの内容の消去

引数
idコントロールID

◆ close()

void urania::WndBase::close ( )
inline

ウィンドウの閉止

◆ copyEB()

void urania::WndBase::copyEB ( int id)
inline

クリップボードへの選擇文字列のコピー

引数
idコントロールID

◆ countItemCB()

int urania::WndBase::countItemCB ( int id)
inline

コンボボックスの項目數の取得

引数
idコントロールID

◆ countItemLB()

int urania::WndBase::countItemLB ( int id)
inline

リストボックスの項目數の取得

引数
idコントロールID

◆ countLineEB()

int urania::WndBase::countLineEB ( int id)
inline

複數行エディットボックスの行數の取得

引数
idコントロールID
戻り値
行數

◆ createCheckBox()

void urania::WndBase::createCheckBox ( int id,
const std::wstring & str,
const eunomia::AnotherRect & re )
inline

チェックボックス生成

引数
idコントロールID
strチェックボックスに表示する文字列
reコントロールの位置、幅、高さの指定
呼び出し関係図:

◆ createComboBox()

void urania::WndBase::createComboBox ( int id,
const eunomia::AnotherRect & re )
inline

コンボボックス生成

引数
idコントロールID
reコントロールの位置、幅、高さの指定
呼び出し関係図:

◆ createEditBox()

void urania::WndBase::createEditBox ( int id,
const eunomia::AnotherRect & re )
inline

エディットボックス生成

引数
idコントロールID
reコントロールの位置、幅、高さの指定
呼び出し関係図:

◆ createLabel()

void urania::WndBase::createLabel ( int id,
const std::wstring & str,
const eunomia::AnotherRect & re )
inline

ラベル生成

引数
idコントロールID
strラベルに表示する文字列
reコントロールの位置、幅、高さの指定
呼び出し関係図:

◆ createListBox()

void urania::WndBase::createListBox ( int id,
const eunomia::AnotherRect & re )
inline

リストボックス生成

引数
idコントロールID
reコントロールの位置、幅、高さの指定
呼び出し関係図:

◆ createMultiLineEditBox()

void urania::WndBase::createMultiLineEditBox ( int id,
const eunomia::AnotherRect & re )
inline

複數行エディットボックスの生成

引数
idコントロールID
reコントロールの位置、幅、高さの指定
呼び出し関係図:

◆ createPushButton()

void urania::WndBase::createPushButton ( int id,
const std::wstring & str,
const eunomia::AnotherRect & re )
inline

ボタン生成

引数
idコントロールID
strボタンに表示する文字列
reコントロールの位置、幅、高さの指定
呼び出し関係図:

◆ cutEB()

void urania::WndBase::cutEB ( int id)
inline

選擇文字列のクリップボードへのコピー及び削除

引数
idコントロールID

◆ deleteItemCB()

void urania::WndBase::deleteItemCB ( int id,
int no )
inline

コンボボックスの項目の削除

引数
idコントロールID
no削除位置

◆ deleteItemLB()

void urania::WndBase::deleteItemLB ( int id,
int no )
inline

リストボックスの項目の削除

引数
idコントロールID
no削除位置

◆ deleting_()

void urania::WndBase::deleting_ ( )
inlineprotected

オブジェクト側からHWNDを破棄

(オブジェクト解體時に)連結してゐるHWNDを破棄する。 インスタンス生成可能な派生クラスの解體子は、 先祖クラスの解體子がdeleting_()を呼び出す場合を除き、 deleting_()を呼び出すべし。

呼び出し関係図:
被呼び出し関係図:

◆ destroy()

void urania::WndBase::destroy ( )
inline

ウィンドウの破棄

呼び出し関係図:

◆ destroyed_()

void urania::WndBase::destroyed_ ( )
inlineprotected

HWNDが破棄された時の後處理

HWNDが破棄されたときに呼び出される。 オブジェクトとHWNDの間の結合を切斷する。

呼び出し関係図:
被呼び出し関係図:

◆ destroyWindow_()

virtual void urania::WndBase::destroyWindow_ ( )
protectedpure virtual

ウィンドウ破棄の實處理

destroy()から呼び出される。 ウィンドウを破棄するための處理を、派生クラスで實裝する。

urania::BasicWindow, urania::Dialogで実装されています。

被呼び出し関係図:

◆ detach_()

void urania::WndBase::detach_ ( )
inlineprotected

HWNDの切り離し

WndBaseオブジェクトとHWNDを切り離すが、HWNDを破棄しない。

被呼び出し関係図:

◆ dirCB()

void urania::WndBase::dirCB ( int id,
const std::wstring & path,
int flag )

コンボボックスへの指定ディレクトリの内容の反映

引数
idコントロールID
pathディレクトリのパス
flag列擧するファイルの屬性の指定

flagに指定するのは(Win32APIの定義する)以下の値の組み合はせ。

  • DDL_ARCHIVE
  • DDL_DDL_DIRECTORY
  • DDL_DRIVES
  • DDL_EXCLUSIVE
  • DDL_HIDDEN
  • DDL_READONLY
  • DDL_READWRITE
  • DDL_SYSTEM

◆ dirLB()

void urania::WndBase::dirLB ( int id,
const std::wstring & path,
int flag )

リストボックスへの指定ディレクトリの内容の反映

引数
idコントロールID
pathディレクトリのパス
flag列擧するファイルの屬性の指定

flagに指定するのは(Win32APIの定義する)以下の値の組み合はせ。

  • DDL_ARCHIVE
  • DDL_DDL_DIRECTORY
  • DDL_DRIVES
  • DDL_EXCLUSIVE
  • DDL_HIDDEN
  • DDL_READONLY
  • DDL_READWRITE
  • DDL_SYSTEM

◆ disableCtrl()

void urania::WndBase::disableCtrl ( int id)
inline

コントロールの無效化

引数
idコントロールID

◆ disableHSB()

void urania::WndBase::disableHSB ( )
inline

水平スクロールバーの無效化

呼び出し関係図:

◆ disableSB()

void urania::WndBase::disableSB ( int id)
inline

スクロールバーの無效化

引数
idコントロールID
被呼び出し関係図:

◆ disableVSB()

void urania::WndBase::disableVSB ( )
inline

垂直スクロールバーの無效化

呼び出し関係図:

◆ enableCtrl()

void urania::WndBase::enableCtrl ( int id)
inline

コントロールの有效化

引数
idコントロールID

◆ enableHSB()

void urania::WndBase::enableHSB ( )
inline

水平スクロールバーの有效化

呼び出し関係図:

◆ enableSB()

void urania::WndBase::enableSB ( int id)
inline

スクロールバーの有效化

引数
idコントロールID
被呼び出し関係図:

◆ enableVSB()

void urania::WndBase::enableVSB ( )
inline

垂直スクロールバーの有效化

呼び出し関係図:

◆ getCurrentCB()

int urania::WndBase::getCurrentCB ( int id)
inline

コンボボックスの選擇中の項目の番號の取得

引数
idコントロールID
戻り値
選擇中の項目の番號(0-based)、但し失敗時は-1

◆ getCurrentLB()

int urania::WndBase::getCurrentLB ( int id)
inline

選擇中のリストボックスの項目番號の取得

引数
idコントロールID
戻り値
選擇中の項目の番號(0-based)、但し失敗時は-1

◆ getHeight()

int urania::WndBase::getHeight ( )
inline

ウィンドウの高さを取得

被呼び出し関係図:

◆ getHI_()

static HINSTANCE urania::WndBase::getHI_ ( )
inlinestaticprotected

派生クラスがHINSTANCEを取得するための"カプセル破り"

被呼び出し関係図:

◆ getHWND()

static HWND urania::WndBase::getHWND ( const urania::WndBase * wb)
inlinestatic

HWNDの取得

WndBaseオブジェクトに結び附いたHWNDを取得する。

引数
wb對象のWndBaseオブジェクトへのポインタ
戻り値
wbに結び附いたHWND
被呼び出し関係図:

◆ getItemCB()

std::wstring urania::WndBase::getItemCB ( int id,
int no )

コンボボックスの項目の取得

引数
idコントロールID
no項目番號(0-based)
戻り値
項目の文字列

◆ getItemLB()

std::wstring urania::WndBase::getItemLB ( int id,
int no )

リストボックスの項目の取得

引数
idコントロールID
no項目番號(0-based)
戻り値
項目の文字列

◆ getLineTextEB()

std::wstring urania::WndBase::getLineTextEB ( int id,
int li )

複數行エディットボックスからの一行の取得

引数
idコントロールID
li取得する行の番號(0-based)
戻り値
指定した行の文字列

◆ getPosHSB()

int urania::WndBase::getPosHSB ( )
inline

水平スクロールバーの位置の取得

呼び出し関係図:

◆ getPosSB()

int urania::WndBase::getPosSB ( int id)

スクロールバーの位置の取得

引数
idコントロールID
被呼び出し関係図:

◆ getPosVSB()

int urania::WndBase::getPosVSB ( )
inline

垂直スクロールバーの位置の取得

呼び出し関係図:

◆ getRangeHSB()

void urania::WndBase::getRangeHSB ( int & min,
int & max,
int & page )
inline

水平スクロールバーの範圍の取得

引数
[out]min最小値
[out]max最大値
[out]pageページサイズ
呼び出し関係図:

◆ getRangeSB()

void urania::WndBase::getRangeSB ( int id,
int & min,
int & max,
int & page )

スクロールバーの範圍の取得

引数
[in]idコントロールID
[out]min最小値
[out]max最大値
[out]pageページサイズ
被呼び出し関係図:

◆ getRangeVSB()

void urania::WndBase::getRangeVSB ( int & min,
int & max,
int & page )
inline

垂直スクロールバーの範圍の取得

引数
[out]min最小値
[out]max最大値
[out]pageページサイズ
呼び出し関係図:

◆ getTextEB()

std::wstring urania::WndBase::getTextEB ( int id)

エディットボックスの内容の取得

引数
idコントロールID
戻り値
内容

◆ getWidth()

int urania::WndBase::getWidth ( )
inline

ウィンドウ幅を取得

被呼び出し関係図:

◆ getWidthAndHeight()

bool urania::WndBase::getWidthAndHeight ( int & w,
int & h )
inline

ウィンドウの幅と高さの取得

引数
[out]w
[out]h高さ
戻り値
成功時はtrue、失敗時はfalse

◆ height()

int urania::WndBase::height ( )
inline

ウィンドウの高さの取得

呼び出し関係図:

◆ hide()

void urania::WndBase::hide ( )
inline

ウィンドウの隱蔽

◆ init_()

virtual void urania::WndBase::init_ ( HWND )
protectedpure virtual

メッセージ處理系初期化

ウィンドウが作成されたときに呼び出される。 オブジェクトとHWNDを結合し、及びその他の處理を行ふ。 派生クラスで實裝する。

urania::Dialog, urania::Windowで実装されています。

被呼び出し関係図:

◆ insertItemCB()

void urania::WndBase::insertItemCB ( int id,
int no,
const std::wstring & txt )
inline

コンボボックスへの項目の插入

引数
idコントロールID
no插入位置
txt插入する項目の文字列

◆ insertItemLB()

void urania::WndBase::insertItemLB ( int id,
int no,
const std::wstring & txt )
inline

リストボックスへの項目の插入

引数
idコントロールID
no插入位置
txt插入する項目の文字列

◆ isChecked()

bool urania::WndBase::isChecked ( int id)
inline

チェックボックスなどのチェックの有無の取得

引数
idコントロールID
戻り値
チェックされてゐればtrue、さもなくばfalse

◆ kill_()

void urania::WndBase::kill_ ( )
inlineprotected

HWNDの切り離しと破棄

WndBaseオブジェクトとHWNDを切り離す。 もしもlink_()されてゐるならHWNDを破棄する。

呼び出し関係図:
被呼び出し関係図:

◆ link_()

void urania::WndBase::link_ ( HWND h)
inlineprotected

HWNDの強固な連結

WndBaseオブジェクトとHWNDを強固に結び附け、 オブジェクト破棄時にHWNDを同時に破棄する。

引数
h連結するHWND
呼び出し関係図:
被呼び出し関係図:

◆ maximize()

void urania::WndBase::maximize ( )
inline

ウィンドウの最大化

◆ minimize()

void urania::WndBase::minimize ( )
inline

ウィンドウの最小化

◆ move()

void urania::WndBase::move ( int x,
int y )
inline

ウィンドウの移動

ウィンドウを移動する。移動先はウィンドウの左上の位置(x, y)で指定する。

引数
x移動先のx座標
y移動先のy座標

◆ normalize()

void urania::WndBase::normalize ( )
inline

ウィンドウの復原

◆ pasteEB()

void urania::WndBase::pasteEB ( int id)
inline

クリップボードからの文字列のペースト

引数
idコントロールID

◆ postMessage()

void urania::WndBase::postMessage ( UINT msg,
WPARAM wp,
LPARAM lp )
inline

メッセージ送出

ウィンドウにメッセージを投げる。

引数
msgメッセージ
wpメッセージのパラメタ(WPARAM)
lpメッセージのパラメタ(LPARAM)

◆ resetTitle()

void urania::WndBase::resetTitle ( const std::wstring & ttl)
inline

ウィンドウタイトルの變更

引数
ttl新しいタイトル

◆ setCurrentCB()

void urania::WndBase::setCurrentCB ( int id,
int no )
inline

コンボボックスの選擇項目の設定

引数
idコントロールID
no選擇する項目の番號(0-based)

◆ setCurrentLB()

void urania::WndBase::setCurrentLB ( int id,
int no )
inline

リストボックスの選擇項目の設定

引数
idコントロールID
no選擇する項目の番號(0-based)

◆ setEBText()

void urania::WndBase::setEBText ( int id,
const std::wstring & txt )
inline

エディットボックスの内容の設定

引数
idコントロールID
txt設定する内容

◆ setPosHSB()

void urania::WndBase::setPosHSB ( int pos)
inline

水平スクロールバーの位置の設定

呼び出し関係図:

◆ setPosSB()

void urania::WndBase::setPosSB ( int id,
int pos )

スクロールバーの位置の設定

引数
idコントロールID
pos位置
被呼び出し関係図:

◆ setPosVSB()

void urania::WndBase::setPosVSB ( int pos)
inline

垂直スクロールバーの位置の設定

呼び出し関係図:

◆ setRangeHSB()

void urania::WndBase::setRangeHSB ( int min,
int max,
int page )
inline

水平スクロールバーの範圍の設定

引数
min最小値
max最大値
pageページサイズ
呼び出し関係図:

◆ setRangeSB()

void urania::WndBase::setRangeSB ( int id,
int min,
int max,
int page )

スクロールバーの範圍の設定

引数
idコントロールID
min最小値
max最大値
pageページサイズ
被呼び出し関係図:

◆ setRangeVSB()

void urania::WndBase::setRangeVSB ( int min,
int max,
int page )
inline

垂直スクロールバーの範圍の設定

引数
min最小値
max最大値
pageページサイズ
呼び出し関係図:

◆ show()

void urania::WndBase::show ( )
inline

ウィンドウの表示

◆ undoEB()

void urania::WndBase::undoEB ( int id)
inline

直前動作の取り消し

引数
idコントロールID

◆ uninit_()

virtual void urania::WndBase::uninit_ ( )
protectedpure virtual

メッセージ處理系初期化解除

ウィンドウが破棄される/たときに呼び出される。 HWNDからオブジェクトへの結合を切斷し、及びその他の處理を行ふ。 派生クラスで實裝する。

urania::Dialog, urania::Windowで実装されています。

被呼び出し関係図:

◆ width()

int urania::WndBase::width ( )
inline

ウィンドウ幅の取得

呼び出し関係図:

メンバ詳解

◆ hw_

HWND urania::WndBase::hw_
protected

管理對象のHWND


このクラス詳解は次のファイルから抽出されました: