WinApi

Vexiorus

Użytkownik
Dołączył
Kwiecień 25, 2009
Posty
51
Tak więc Mam kolejne pytanie
<
związane z WinApi lecz tez ze zwykłym programowaniem
Chodzi mi o opcje
MessageBox
Zauwazylem ze mozna ja dodac do zwyklego progamu nie tylko WinApi

A konkretniej jak sprawdzic ktory przycisk został nacisniety np w tym wypadku:

MessageBoc(NULL, "Testowy Text okna", "Info", MB_ICONINFORMATION | MB_OKCANCEL);

W tym okienku bedą 2 przyciski OK oraz Anuluj
Jaka komenda odpowiada za sprawdzenie ktory z nich został wcisnięty ?? :/
 

thc_flow

Zbanowany
Dołączył
Listopad 13, 2008
Posty
649
To co zostało wciśnięte zwracane jest jako wynik tej funkcji czyli piszesz np.
Kod:
Wynik = MessageBox(...)
Oczywiście wcześniej deklarując tą zmienną (jako integer)
 

zamor

Użytkownik
Dołączył
Czerwiec 14, 2009
Posty
9
Wynik=MessageBoc(NULL, "Testowy Text okna", "Info", MB_ICONINFORMATION | MB_OKCANCEL);

If(wynik==IDOK){cout<< Wciśnięto ok.<<endl;}
If(wynik== IDCANCEL){cout<<Anulowano<<endl;}
 

Vexiorus

Użytkownik
Dołączył
Kwiecień 25, 2009
Posty
51
A czy w funkcji MessageBox mozna stworzyc wlasne przyciski ??
<

Np
Zamiast:
MessageBoxWynik=MessageBox(NULL, "Testowy Text okna", "Info", MB_ICONINFORMATION | MB_OKCANCEL);

zamiast ok bylbo by naprzyklad 'tak/yes' zamiast anuluj by bylo 'anuluj/cancel'
 

discovery44

Były Moderator
Dołączył
Sierpień 14, 2007
Posty
763
Zanim zadasz jeszcze jedno pytanie dotyczące WinAPI zajrzyj tu LINK bo tam masz odpowiedzi na najczęstsze pytania dotyczące WinAPI.
zamiast ok bylbo by naprzyklad 'tak/yes' zamiast anuluj by bylo 'anuluj/cancel'[/b]
Chyba musiałbyś coś w stylach zmieniać a nie wiem czy to jest możliwe. Ale jakiś sposób napewno jest.
 

Mo4x

Były Moderator
Dołączył
Grudzień 26, 2005
Posty
704
<div class='quotetop'>CYTAT(Vexiorus @ 14.06.2009, 14:54) <{POST_SNAPBACK}></div>
Zamiast:
MessageBoxWynik=MessageBox(NULL, "Testowy Text okna", "Info", MB_ICONINFORMATION | MB_OKCANCEL);

zamiast ok bylbo by naprzyklad 'tak/yes' zamiast anuluj by bylo 'anuluj/cancel'[/b]
Przyciski jakie możesz ustawić:
MB_OK = $0
MB_OKCANCEL = $1
MB_ABORTRETRYIGNORE = $2
MB_YESNOCANCEL = $3
MB_YESNO = $4
MB_RETRYCANCEL = $5

Jeżeli chciałbyś zrobić własne przyciski to możesz zrobić okno dialogowe, wyglądające jak messagebox i w nim dać przyciski jakie chcesz.
 

zamor

Użytkownik
Dołączył
Czerwiec 14, 2009
Posty
9
Mh?;
Możesz również pobrać uchwyt tego przycisku i wysłać do niego wiadomość;

SendMessage(hButton,WM_SETTEXT,0,LPARAM(LPCTSTR(NewNameButton)));

Gdzie hButton to jest uchwyt danej kontrolki a NewNameButton to jest jej nowa nazwa;
 

thc_flow

Zbanowany
Dołączył
Listopad 13, 2008
Posty
649
Eee tam, qrna, ludzie na co komu inne odpowiedzi niż te już gotowe? no chyba nie będzie nikt robił dwóch przycisków anuluj...
 

zamor

Użytkownik
Dołączył
Czerwiec 14, 2009
Posty
9
<div class='quotetop'>CYTAT(THC Flow @ 14.06.2009, 21:29) <{POST_SNAPBACK}></div>
Eee tam, qrna, ludzie na co komu inne odpowiedzi niż te już gotowe? no chyba nie będzie nikt robił dwóch przycisków anuluj...[/b]
Zgadzam się w zupełności;


Jeśli tak bardzo Ci zależy możesz zrobić menu w którym się będzie wybierać język aplikacji;
 

Vexiorus

Użytkownik
Dołączył
Kwiecień 25, 2009
Posty
51
Eee tam, qrna, ludzie na co komu inne odpowiedzi niż te już gotowe? no chyba nie będzie nikt robił dwóch przycisków anuluj...[/b]

A chocby po to ze chcialem zrobic taką gierke cos ala quiz
<
prosto by bylo ja napisac jezeli dalo by sie przyciski samemu robic
<

w messagebox-ie by wyskakiwalo pytanie np:
Ktore państwo z podanych jest najwieksze
i przyciski o nazwie np:. "Polska" , "Chiny" , "Rosja"
 

Vexiorus

Użytkownik
Dołączył
Kwiecień 25, 2009
Posty
51
Mam kolejne pytanie. Po stworzeniu obojetnie jakiego okna mam otwarte Okno + plik.exe otwarty w wierszu polecen a jak zrobic zeby bylo samo okienko ?? :/
Przy okazji, czy mozna ukryc to okno wiersza polecen (czy jak to sie tam nazywa) gdy nie jest to WinApi a jezeli tak to jak :/



Kolejne pytanie. Puste okienko oraz plik obrazek.jpg
I chcial bym aby po uruchomieniu mojego pliku.exe w okienku wyswietlal sie obrazek. Jak to zrobic ??
 

zamor

Użytkownik
Dołączył
Czerwiec 14, 2009
Posty
9
Dodaj następujący kod do swojego programu:


<div class='codetop'>CODE</div><div class='codemain' style='height:200px;white-space:pre;overflow:auto'>HWND hThisWindow;
system("title jakiesokno");

while(1){
hThisWindow =FindWindow(0," jakiesokno ");
if(hThisWindow!=0){
break;
}
}

ShowWindow(hThisWindow,SW_HIDE);</div>



Kolejne pytanie. Puste okienko oraz plik obrazek.jpg
I chcial bym aby po uruchomieniu mojego pliku.exe w okienku wyswietlal sie obrazek. Jak to zrobic ??[/b]


Ty choć raz przeczytałeś jakiś toturial o WinApi???????????????????????? Ja Ci już więcej nie pomogę, dopóki nie zaczniesz czytać!!
 

Mo4x

Były Moderator
Dołączył
Grudzień 26, 2005
Posty
704
<div class='quotetop'>CYTAT(Vexiorus @ 9.07.2009, 2:21) <{POST_SNAPBACK}></div>
Kolejne pytanie. Puste okienko oraz plik obrazek.jpg
I chcial bym aby po uruchomieniu mojego pliku.exe w okienku wyswietlal sie obrazek. Jak to zrobic ??[/b]
Na początek Ci podpowiem, że naucz się pierwsze wyświetlać bitmapy
<


Polecam również:
http://winapi.org/
 
Do góry Bottom