Gering Napisano Sierpień 20, 2019 Autor Zgłoś Udostępnij Napisano Sierpień 20, 2019 Napisałem sobie programik z kontrolka richedit . Ładuje kontrolke richedit zgodnie z tym co jest napisane na stronie //Ładuje biblioteke do programu Library = LoadLibrary("RICHED32.DLL"); //Sprawdzam poprawnośc załadowania biblioteki if(!Library) { MessageBox(NULL,"Nie mozna znaleźc pliku riched32.dll","",MB_OK|MB_ICONERROR); } //Tworze kontrolkę edycji richedit Edit = CreateWindowEx(WS_EX_CLIENTEDGE,"RichEdit","",WS_CHILD|WS_VISIBLE|WS_HSCROLL|WS_VSCROLL|ES_MULTILINE,0,0,200,150,Okno,NULL,Typewriter,0) ; I nie bardzo moge uwierzyc ze to jest kontrolka richedit :D Co prawda kontrolka sie tworzy i wsztko jest ok . A nie moge dowierzyc z tego wzgledu ze plik RICHED32.DLL znajduje sie w katalogu system32 , a ja nie podaje sciezki przecie z do tego pliku , po drugie nawet bez pliku nagłówkowego richedit.h. Kolejną sprawą jest fakt ze kontrolka moze "podobno" o wiele wiecj znaków , wiec gdy po utworzeniu pisze w niej ale do pewnego mometu i nie mozna dalej próbowalem tez wysłac komunikat jak dla standardowje kontrolki edycji SendMessage(Edit,EM_SETLIMITTEXT,NULL,NULL); Kolejna sprawa jest to ze próbuje sobie utworzyc statusbar , dodaje biblioteke i plik nagłówkowy ale gdy deklaruje struktóre INITCOMMONCONTROLSEX Dev zgłąsza bład . Gdy pisałem pod VC++ nic takiego sie nie działo podpieram sie przykładem z strony . Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Jarema Napisano Sierpień 20, 2019 Zgłoś Udostępnij Napisano Sierpień 20, 2019 Co do pierwszych 2 pytań to w porządku ponieważ Windows szuka dll-ow nie tylko u Ciebie w katalogu z programem. Szuka tutaj najpierw potem chyba w windows-ie potem w systemach i dlatego znalazl. Co do statusa to sproboj tak: InitCommonControls(); CreateStatusWindow(WS_CHILD | WS_VISIBLE, "", hParent, 0); Mnie to zawsze działało. Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Gering Napisano Sierpień 20, 2019 Autor Zgłoś Udostępnij Napisano Sierpień 20, 2019 Dzęki , ale jak zwiekrzyc ilosc przechowywanych znaków w kontrolce po powinna przchowywac wiecej, i jak ustawiac czcionke, to znaczy rozmiar , wielkosc itp??? Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Jarema Napisano Sierpień 21, 2019 Zgłoś Udostępnij Napisano Sierpień 21, 2019 No coz nie wiem jak na Twoje pytanie odpowiedziec bo nigdy sie ta kontrolka nie zajmowalem, ale na 90% odpowie Ci na nie autor tutoriala o tym - codeguy. Wyslij mu PM albo zagadaj na GG. Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Surprise Napisano Sierpień 23, 2019 Zgłoś Udostępnij Napisano Sierpień 23, 2019 Jeśli chodzi o określenie ilości przechowywanego tekstu to richedit posługuje się trochę innym komunikatem: EM_EXLIMITTEXT wParam = 0; lParam = (LPARAM) (DWORD) cchTextMax; Sprawę formatowania można powierzyć komunikatowi: EM_SETCHARFORMAT wParam = (WPARAM) (UINT) uFlags; lParam = (LPARAM) (CHARFORMAT FAR *) lpFmt; W lParam przekazujemy wskaźnik do struktury CHARFORMAT w której określamy w odpowienich polach formatowanie tekstu. typedef struct _charformat { UINT cbSize; _WPAD _wPad1; DWORD dwMask; DWORD dwEffects; LONG yHeight; LONG yOffset; COLORREF crTextColor; BYTE bCharSet; BYTE bPitchAndFamily; CHAR szFaceName[LF_FACESIZE]; _WPAD _wPad2; } CHARFORMAT; wParam określa część tekstu, która ma zostać sformatowana: SCF_SELECTION - zaznaczony SCF_ALL - wszystko SCF_WORD | SCF_SELECTION - muszą występować razem. Formatują zaznaczone wyrazy, jeśli nic nie zostało zaznaczone, a wskaźnik kursor jest gdzię w wyrazie to wtedy zezwala na formatowanie Inne komunikaty i struktury służące do formatowania: CHARFORMAT EM_GETCHARFORMAT EM_GETPARAFORMAT EM_GETRECT EM_SETBKGNDCOLOR EM_SETCHARFORMAT EM_SETEVENTMASK EM_SETPARAFORMAT EM_SETRECT PARAFORMAT No nic więcej nie piszę bo zaraz się z tego art zrobi...hehe...a co do artów to za niedługo następna częśc (o szukaniu tekstu..itp, formatowanie będzie później :P), mimo to zachęcam do pracy z helpem...kurde czemu was tak zraża ten angielski...ehh Cytuj Link do komentarza Udostępnij na innych stronach More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.