[C++/WinAPI] SetWindowText, wyświetlanie tekstu


(rozwalkompa) #1

Szukałem, ale jakoś nie znalazłem tego, o co mi chodzi.

Jak wyświetlić jakiś tekst w oknie programu? Trzeba stworzyć kontrolkę czy można pisać ot tak, jak w aplikacji konsolowej?

W jednym z kursów jest: [codę]SetWindowText(hwnd, "Tekst"); //zrób coś z tekstem, np. wyświetl go

Jak osobną kontrolkę to jaką (raczej nie "BUTTON") i gdzie ją umieścić?

Jak inną funkcję, to jaką?

Z góry dziękuję.

użyto funkcji SetWindowText(), ale napis nie pojawił się w oknie, tylko na belce, zamiast nazwy aplikacji.


(Borli) #2

SetWindowText ustawia tekst okna, czyli tekst na przycisku, w polu edit, czy właśnie na belce "zwykłego" okna. Jeśli chcesz pisać po obszarze roboczym okna użyj: TextOut lub DrawText.


(rozwalkompa) #3

Ok. Poszukałem, poczytałem o funkcji TextOut, działa!

A jest jakaś funkcja w stylu Pascal'owego 'length("tekst")', która zwraca długość łańcucha? Bo w TextOut ostatni parametr to właśnie długość, a mi się nie chce liczyć na piechotę :smiley:

Poza tym jak zmienić kolor tła tekstu - poszukam jeszcze w necie, ale jakbym nie znalazł, to pytam na zapas :smiley:


(Borli) #4

Długość tekstu policzysz strlen, a do zmiany tła to możesz np. narysować prostokąt i w nim umieścić napis (tu może się przydać DrawText).


(rozwalkompa) #5

Dobra. Dzięki za pomoc, pozdrawiam