Skocz do zawartości

Parę pytań :)


Parody

Recommended Posts

Witam.
Żeby się nie rozpisywać przejdę do rzeczy :

1.Mam pole EDIT jest subklasowane i przechwytuję komunikat o wciśnięciu ENTER, ale jeżeli EDIT jest MULTILINE to po SetWindowText(hEdit""); ciągle zostaje znak nowej linii (tj. kursor znajduje się w 2 linii edita), a jeśli EDIT jest jedno liniowy to przy naciśnięciu ENTER jest dźwięk (taki sam jak w czasie wpisywania, gdy skończy się miejsce w kontrolce). Pytanie brzmi jak się tego pozbyć? Próbowałem dać return true; / return false; przy komunikacie ale nic to nie zmieniło :(.

2.Jak już jestem przy polach EDIT co trzeba jeszcze zrobić żeby mieć w programie rich edit ? Mam zainicjowane commoncontrols(ICC_WIN95_CLASSES), wczytałem DLL'a następnie próbuje stworzyć okno za pomocą stylu (RICHEDIT_CLASS10A lub RICHEDIT_CLASS) ale okna jak nie ma tak nie ma :( (PS. Nagłówek dołączyłem :) ). Jakby ktoś mógł rzucić kodem byłbym wdzięczny :).

3.Trzecie pytanie jest podobne do pytania jakie zadał kiedyś Piasiu, czyli czy istnieje kontrolka która pozwala wyświetlać HTML ?

Z góry dzięki za pomoc :).

Link do komentarza
Udostępnij na innych stronach

ad. 2
Ja laduje RichEdit tak:

LoadLibrary("RICHED32.DLL");   

  hwnd = CreateWindowEx(0, "RICHEDIT", "", WS_VISIBLE,
           0, 0, 100, 50, NULL, NULL, hInstance, NULL);   

I naglowek: "richedit.h"

Wiecej informacji na pewno znajdziesz w MSDN.

ad. 3
Do wyswietlania nada sie RichEdit, ale kod HTML musisz sam obsluzyc.
Jezeli cie to interesuje to znalazlem na grupie:
https://groups.google.pl/groups?q=RichEdit+C%2B%2B+winapi&start=10&hl=pl&lr=&ie=UTF-8&selm=aj5kln%24udp%241%40lacerta.tiscalinet.it&rnum=15

i tutaj tez cos jest:
https://spiff.tripnet.se/~iczelion/ - dzial tutoriale i RichEdit

Link do komentarza
Udostępnij na innych stronach

A wiec trochę źle opisałem problem, mam dwa pola EDIT jedno służy do wprowadzania tekstu drugie jest READONLY. EDIT do wprowadzania tekstu jest subklasowany i przechwytuję komunikat wciśnieńcia ENTER, następnie dodaję tekst do pola READONLY (także dodawanie tekstu nie stanowi problemu ;) ) problem polega na tym iż jeśli EDIT do wprowadzania tekstu jest jedno liniowy to po naciśnięciu enter odgrywany jest dźwięk a jeżeli jest multiline to nawet po ustawieniu SetWindowText(hEdit,""); pozostaje w nim znak nowej lini i tekst wprowadzamy od 2 lini :/. Jak się tego pozbyć (mowa o dźwięku lub znaku nowej lini jeśli edit do wprowadzania tekstu jest multiline)?

A co do GG to trochę ciężko mi uwierzyć ze w rozmowie użyto zwykłego EDITa (wystarczy się pobawić trochę w przeciąganie obrazków na obrazki itp. A w pewnym momencie w okienku jest strona IE "Brak strony")

Link do komentarza
Udostępnij na innych stronach

W GG to chyba rzeczywiście jest kontrolka HtmlView, bo mi tez sie taka strona kilka razy już wyświetliła. Poszperałem torchę w msdnie i na googlach i wywnioskowałem (żadnych jednoznacznych informacji nie znalazłem), że można coś takiego zrobić w MFC (tam jest odpowiednia kontrolka, ale używa klas Microsoftu :( ).

Qbu$ wrzuć tu kod funkcji obsługi subclassowanego edita, może tam jest jakiś błąd.

Link do komentarza
Udostępnij na innych stronach

Co do kontrolki HTML to znalazłem parę ciekawych linków :
https://www.wischik.com/lu/programmer/webform.html
https://www.codeguru.com/Cpp/I-N/ieprogram/article.php/c4379

A tu jest Kod edita:

LRESULT CALLBACK procEdit (HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch(uMsg){
        case WM_KEYDOWN:
                switch(wParam){
                case 13:
                        if(GetWindowTextLength(hwnd)<=0) break;
                        GetWindowText(hwnd,pOut.data,GetWindowTextLength(hwnd)+1);
                        SetWindowText(hwnd,"");
                        SetFocus(hwnd);
...
... // tu było ustawienie tekstu w EDICIE READONLY
...
                        break;
                        }
                        break;
                }
                        //przekazanie komunikatów do oryginalnych funkcji 
                        return CallWindowProc (WndProcOrg, hwnd, uMsg, wParam, lParam);

}
Link do komentarza
Udostępnij na innych stronach

szatkus napisał:
Napisałem sobie taki programik do analizowania okien

Heh, też muszę sobie coś takiego w wolnej chwili skrobnąć.

szatkus napisał:
Czyli to RichEdit 2.0

Ale dwa razy coś takiego Ci wyskoczyło (tam w oknie rozmowy są dwie kontrolki do wyświetlania)?

Nie zmienia to jednak faktu, że fajnie by było mieć kontrolkę wyświetlającą html. ;-)

Link do komentarza
Udostępnij na innych stronach

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gość
Odpowiedz...

×   Wkleiłeś zawartość bez formatowania.   Usuń formatowanie

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Utwórz nowe...