MyMEMO

  ウインドウの背景色



1) グローバル変数の定義
  
HBRUSH	h2000;
  

2) ブラシの作成
  
h2000 = CreateSolidBrush( RGB( 58,109,165 ) );
  

3) ブラシの削除
  
DeleteObject( h2000 );
  

4) WM_ERASEBKGND メッセージでブラシを適用
  
case WM_ERASEBKGND:             /* メッセージ: 背景をクリア */
	HGDIOBJ	hOld;
	RECT rt;
	hOld = SelectObject( (HDC)wParam, h2000 );
	GetClientRect(hWnd, &rt);
	PatBlt( (HDC)wParam, rt.left, rt.top, rt.right-rt.left, rt.bottom-rt.top, PATCOPY );
	SelectObject( (HDC)wParam, hOld );
	return TRUE;
  




  マルチラインエディットコントロール



1) グローバル変数
  
HWND	hMedit;
  

2) コントロール作成
  
	DWORD	style;

	style = WS_CHILD | WS_VISIBLE | WS_BORDER | WS_VSCROLL |
		ES_MULTILINE | ES_WANTRETURN;

	RECT	Rect;

	GetClientRect( hWnd, (LPRECT)&Rect);
	hMedit = CreateWindow( "edit",
		NULL, style, 0, 0, Rect.right-Rect.left, Rect.bottom-Rect.top-20, hWnd, NULL, hInst, NULL);
	if ( !hMedit ) {
		DestroyWindow( hWnd );
		return FALSE;
	}
  

3) WM_SIZE メッセージの適用
  
MoveWindow( hMedit, 0, 0, LOWORD(lParam), HIWORD(lParam)-20, TRUE);
  



  マルチラインエディットコントロールの背景色とテキスト色

1) グローバル変数
  
HBRUSH	hMeditBackColor;
  

2) ブラシの作成
  
hMeditBackColor = CreateSolidBrush( RGB( 0,0,0 ) );
  

3) ブラシを削除
  
DeleteObject( hMeditBackColor );
  

4) WM_CTLCOLOREDIT メッセージの適用
  
case WM_CTLCOLOREDIT:
	SetTextColor((HDC)wParam, RGB( 255,255,255 ));
	SetBkColor((HDC)wParam, RGB( 0,0,0 ));
	return (LRESULT)hMeditBackColor;
  



  起動直後にフォーカスをマルチラインエディトコントロールにフォーカスを移す

WM_CTLCOLOREDIT メッセージに追加
  
case WM_CTLCOLOREDIT:
	SetTextColor((HDC)wParam, RGB( 255,255,255 ));
	SetBkColor((HDC)wParam, RGB( 0,0,0 ));
	SetFocus( hMedit );
	return (LRESULT)hMeditBackColor;
  



  ファイルの読み込みの為のダイアログを用意

1) ヘッダーファイル
  
#include "commdlg.h"
  

2) IDM_OPENFILE でメニューを用意

3) グローバル変数
  
OPENFILENAME ofn;
  

4) GetOpenFileName をメニューに適用
  
case IDM_OPENFILE:
	ofn.lStructSize = sizeof( OPENFILENAME );
	ofn.hwndOwner = hWnd;
	ofn.hInstance = hInst;
	ofn.lpstrFilter = "全て\0*.*\0\0";
	ofn.lpstrCustomFilter = NULL;
	ofn.nMaxCustFilter = NULL;
	ofn.nFilterIndex = 1;
	char buffer[_MAX_PATH];
	buffer[0] = 0x00;
	ofn.lpstrFile = buffer;
	ofn.nMaxFile = 4096;
	ofn.lpstrFileTitle = NULL;
	ofn.lpstrInitialDir = NULL;
	ofn.lpstrTitle = "ファイルのオープン";
	ofn.Flags = OFN_FILEMUSTEXIST | OFN_HIDEREADONLY;
	ret = GetOpenFileName( &ofn );
	if ( ret == 0 ) {
		break;
	}
  










  infoboard   管理者用   
このエントリーをはてなブックマークに追加





フリーフォントWEBサービス
SQLの窓WEBサービス

SQLの窓フリーソフト

素材

一般WEBツールリンク

SQLの窓

フリーソフト

JSライブラリ