WinApi i kontrolka Edit

0

Witam !

Mam kilka problemów związanych z kontrolką Edit:

  1. Jeżeli z poziomu programu ustawiam wartość początkową funkcją SetWindowText(); wszystko jest ok. Ale jeśli chcę zrobić coś takiego, że ustawiam wartość i po kilku operacjach dodaje do tej wartość następną to ta pierwsza ma być z tą drugą, np. wartość pierwsza: 50; wartość druga 100; I jeśli zrobię to w osobnych SetWindowTextach() to będzie widoczna tylko druga wartość :( :D Moje pytanie brzmi jak zrobić żeby były widoczne dwie wartości ?

2.To może nie z kontrolką Edit ale podobne. Chcę sobie walnąć na oknie jakiś tekst, np. " Nie wiem jak to zrobić" Próbowałem funkcją textout(); ale kompilator wywala błąd :(.

Z góry dziękuję. Jeśli jakieś pytania będą nie jasne(a zapewne tak będzie :( )Spróbuję lepiej je sformułować :-P

0

Ad 1:
Pierwsze pobierasz wartość z kontrolki edit, i robisz:

char buff[128];
sprintf(buff, "%s%s", pobrana_wartosc, dodana_wartosc);

wysylasz do kontrolki zmienną buff.

0

Co do drugiego - poczytaj o WM_PAINT i o HDC.

Albo prosciej - utworz sobie labela z odpowiednim tekstem (funkcje CreateWindow chyba znasz?)

0

[b]lopik[/b] chyba źle zrozumiałeś :( . Chodzi mi o to że:
1.Na początku programu daję do tego Edita text żeby użytkownik wiedział co tam wpisać :) Np. "Wpisz swoje imię."
2.Użytkownik na razie nie wpisuję tam swojego imienia tylko daję następny text "A teraz wpisz swój wiek"
3.Chcę żeby widoczne było: "Wpisz swoje imię. A teraz wpisz wiek. "

Jeśli zrobię to w ten sposób:
1.Wysyłam do kontrolki Edit text: "Wpisz swoje imię."
2.Znowu wysyłam do kontrolki "A teraz wpisz wiek."
To wtedy wyświetla mi tylko drugi text :( I nie wiem jak zrobić żeby były widoczne te dwa text [???]

A ty PS'ach to poczytam(czytałem już, ale nie zbyt dokładnie :))

Pozdro

0

Zrobione przy pomocy MFC.

UpdateData(TRUE);

CString m_wiek("Ile masz lat"); // string 1
CString m_imie("Jak masz na imie?"); // string 2

/* m_kontrolkaedit -> zmienna typu CString polaczona z kontrolka edit */

if (m_kontrolaedit.GetLength() == 0)

{

m_kontrolkaedit = m_imie;

}

else

{

m_kontrolkaedit = m_imie + m_wiek;

}

UpdateData(FALSE);

// wpisz to w obsludze jakiegos przycisku np OnButton1 ;p

0

Dzięki wam bardzo wszystko śmiga :D Ale żeby nie zakładać drugiego tematu: Jeśli chcę przekonwerterować
zmienną int na LPSTR(char *) używam funkcji itoa(); Ale jak jej używam to visualc++ 2005 express edition daje warny:
warning C4996: 'itoa' was declared deprecated
C:\Program Files\Microsoft Visual Studio 8\VC\include\stdlib.h(820) : see declaration of 'itoa'
Message: 'The POSIX name for this item is deprecated. Instead, use the ISO C++ conformant name: _itoa. See online help for details.'

Jak się odpali program który zrobiłem to jest tam okienko z tym wyślij raport, nie wysyłaj :(

Proszę o pomoc, szukałem w googlach ale nic nie dało

0

dobra już nieważne .... Napisałem własną funkcję :D Dziękuję wszystkim serdecznie za odpowiedzi :) Już nie będę zawracał wam głowy takimi bzdetami ;)

1 użytkowników online, w tym zalogowanych: 0, gości: 1