「MFCコントロール - 動的配置」の版間の差分
ナビゲーションに移動
検索に移動
細 (Wiki がページ「コントロールの動的配置(MFC)」を「MFCコントロール - 動的配置」に、リダイレクトを残さずに移動しました) |
細 (文字列「<source」を「<syntaxhighlight」に置換) |
||
1行目: | 1行目: | ||
== CEditの動的配置 == | == CEditの動的配置 == | ||
< | <syntaxhighlight lang="c++"> | ||
void CxxxxDlg::OnButton1Clicked() | void CxxxxDlg::OnButton1Clicked() | ||
{ | { | ||
25行目: | 25行目: | ||
== CStaticの動的配置 == | == CStaticの動的配置 == | ||
< | <syntaxhighlight lang="c++"> | ||
void CxxxxDlg::OnButton3Clicked() | void CxxxxDlg::OnButton3Clicked() | ||
{ | { | ||
42行目: | 42行目: | ||
== CEditの派生クラスの作成と動的配置 == | == CEditの派生クラスの作成と動的配置 == | ||
< | <syntaxhighlight lang="c++"> | ||
class CEditEx : public CEdit | class CEditEx : public CEdit | ||
{ | { |
2021年11月18日 (木) 09:19時点における版
CEditの動的配置
<syntaxhighlight lang="c++"> void CxxxxDlg::OnButton1Clicked() { RECT r; r.top = 10; // 上の座標 r.bottom = 30; // 下の座標 r.left = 10; // 左の座標 r.right = 100; // 右の座標 // RECT r = {10, 30, 10, 100}; CEdit* pEdit = new CEdit(); pEdit->Create(WS_VISIBLE | WS_CHILD | WS_TABSTOP, r, this, WM_APP + 1); pEdit->ModifyStyleEx(0, WS_EX_CLIENTEDGE, SWP_DRAWFRAME); // pEdit->DestroyWindow(); // オブジェクトの破棄 } void CxxxxDlg::OnButton2Clicked() { GetDlgItem(WM_APP + 1)->SetWindowText(_T("hoge")); // GetDlgItem(WM_APP + 1)->DestroyWindow(); // オブジェクトの破棄 } </source>
CStaticの動的配置
<syntaxhighlight lang="c++"> void CxxxxDlg::OnButton3Clicked() { RECT r; r.top = 10; // 上の座標 r.bottom = 30; // 下の座標 r.left = 10; // 左の座標 r.right = 100; // 右の座標 // RECT r = {10, 30, 10, 100}; CStatic* pStatic = new CStatic(); pStatic->Create(_T("テキスト名を入力"), WS_VISIBLE | WS_CHILD, r, this, WM_APP + 2); } </source>
CEditの派生クラスの作成と動的配置
<syntaxhighlight lang="c++"> class CEditEx : public CEdit { public: void TestFunc() { SetWindowText(_T("hoge")); } // (以下略) }; void CxxxxDlg::OnButton4Clicked() { RECT r; r.top = 10; // 上の座標 r.bottom = 30; // 下の座標 r.left = 10; // 左の座標 r.right = 100; // 右の座標 // RECT r = {10, 30, 10, 100}; CEditEx *pEditEx = new CEditEx(); pEdit->Create(WS_VISIBLE | WS_CHILD | WS_TABSTOP, r, this, WM_APP + 1); pEdit->ModifyStyleEx(0, WS_EX_CLIENTEDGE, SWP_DRAWFRAME); pEditEx->TestFunc(); // pEditEx->DestroyWindow(); // オブジェクトの破棄 } </source>