API utilisation de Rich Edit avec dev c++
Richard Cote
-
mindslight -
mindslight -
Bonjour à tous,
Je veux créer un Rich Edit en utilisant les APIs de windows, j'ai trouvé ce bout de code:
Malheureusement! Le code ne fonctionne pas et je ne comprend pas pourquoi.
Lorsque je remplace "RICHEDIT_CLASS" par "EDIT" tout fonctionne corectement.
Merci.
Je veux créer un Rich Edit en utilisant les APIs de windows, j'ai trouvé ce bout de code:
#include <commctrl.h> LRESULT CALLBACK MainWndProc(HWND hwnd, UINT uMsg, PARAM wParam, LPARAM lParam) { static HWND hEdit; static HWND hsb; static BOOL EditNotChg = TRUE; switch (uMsg) { case WM_CREATE: InitCommonControls(); //Rich Edit { HFONT hFont; hEdit = CreateWindow("RICHEDIT_CLASS", "",WS_CHILD | WS_VISIBLE | ES_MULTILINE | ES_WANTRETURN | WS_VSCROLL, 0, 0, 0, 0, hwnd, NULL, hinst, NULL); hFont = (HFONT)GetStockObject(ANSI_FIXED_FONT); SendMessage(hEdit,WM_SETFONT,(UINT)hFont,TRUE); SendMessage(hEdit, EM_SETMARGINS, EC_LEFTMARGIN | EC_RIGHTMARGIN, MAKELONG(5, 5)); return 0; }
Malheureusement! Le code ne fonctionne pas et je ne comprend pas pourquoi.
Lorsque je remplace "RICHEDIT_CLASS" par "EDIT" tout fonctionne corectement.
Merci.
A voir également:
- API utilisation de Rich Edit avec dev c++
- Dev c++ - Télécharger - Langages
- Cool edit pro - Télécharger - Édition & Montage
- Utilisation chromecast - Guide
- Massgrave dev - Accueil - Windows
- Télécharger gratuitement notice d'utilisation - Guide
3 réponses
LoadLibrary("RICHED20.DLL");
ca marche mieux ainsi pas besoin de AfxInitRichEdit !!!! qui lui demande un plug des mfcs
ca marche mieux ainsi pas besoin de AfxInitRichEdit !!!! qui lui demande un plug des mfcs
HWND hEdit;
hEdit = CreateWindowEx(0, RICHEDIT_CLASS, "",
WS_CHILD|WS_VISIBLE|ES_SAVESEL|ES_MULTILINE|ES_AUTOVSCROLL|WS_VSCROLL|ES_AUTOHSCROLL|WS_HSCROLL|ES_AUTOHSCROLL|ES_SUNKEN,
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
hwnd, (HMENU)IDC_CHILD_EDIT, g_hInst, NULL);
CHARFORMAT2 lpFmt;
SendMessage(hEdit, EM_SETBKGNDCOLOR, 0, (LPARAM)RGB(255,255,255));
lpFmt.cbSize = sizeof(lpFmt);
lpFmt.dwMask = CFM_BOLD|CFM_COLOR|CFM_SIZE|CFM_ITALIC|CFM_UNDERLINE|CFM_FACE;
lpFmt.crTextColor = RGB(0,0,0);
lpFmt.yHeight = 220;
lpFmt.dwEffects = 0 ;
lpFmt.bCharSet = ANSI_CHARSET;
lpFmt.bPitchAndFamily = DEFAULT_PITCH;
lstrcpy(lpFmt.szFaceName, "Arial");
SendMessage(hEdit, EM_SETCHARFORMAT, SCF_ALL, (DWORD)&lpFmt);
hEdit = CreateWindowEx(0, RICHEDIT_CLASS, "",
WS_CHILD|WS_VISIBLE|ES_SAVESEL|ES_MULTILINE|ES_AUTOVSCROLL|WS_VSCROLL|ES_AUTOHSCROLL|WS_HSCROLL|ES_AUTOHSCROLL|ES_SUNKEN,
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
hwnd, (HMENU)IDC_CHILD_EDIT, g_hInst, NULL);
CHARFORMAT2 lpFmt;
SendMessage(hEdit, EM_SETBKGNDCOLOR, 0, (LPARAM)RGB(255,255,255));
lpFmt.cbSize = sizeof(lpFmt);
lpFmt.dwMask = CFM_BOLD|CFM_COLOR|CFM_SIZE|CFM_ITALIC|CFM_UNDERLINE|CFM_FACE;
lpFmt.crTextColor = RGB(0,0,0);
lpFmt.yHeight = 220;
lpFmt.dwEffects = 0 ;
lpFmt.bCharSet = ANSI_CHARSET;
lpFmt.bPitchAndFamily = DEFAULT_PITCH;
lstrcpy(lpFmt.szFaceName, "Arial");
SendMessage(hEdit, EM_SETCHARFORMAT, SCF_ALL, (DWORD)&lpFmt);