Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Messesagbox

Ostatnio zmodyfikowano 2017-04-02 21:31
Autor Wiadomość
MaGicSuR
Temat założony przez niniejszego użytkownika
Messesagbox
» 2017-04-02 19:39:28
C/C++
if( GetAsyncKeyState( VK_NUMPAD4 ) & 1 )
{
    ShellExecute( NULL, "open", "!!link!!", "", "", SW_SHOWNORMAL );
}
Tego używam, aby automatycznie po kliknięciu NUMPAD4 otwierał mi się link, a co z messesag box'em... Tutaj pojawia mi się problem


Tak wygląda mój source code...
C/C++
MessageBox( NULL, "!!link!!", "STEAM GROUP", MB_ICONINFORMATION | MB_OKCANCEL );
I chcę zdefiniować że po kliknięciu "OK"albo "CANCEL" otwiera się link. albo nie. Próbowałem jak i szukałem wielu sposobów, ale  jakoś nie udało mi się tego zrobić, więc postanowiłem założyć konto i się was spytać...

Jakie biblioteki wgl trzeba dodać, aby zdefiniować przycisk "OK" i "CANCEL" ? no i jak taki source code powinien wyglądać... jeszcze słyszałem coś, że trzeba dopisać "using namespace ...", ale sam nie mam pojęcia...
P-159706
Bielan
» 2017-04-02 19:52:54

Jakie biblioteki wgl trzeba dodać, aby zdefiniować przycisk "OK" i "CANCEL" ?
Przecież już masz te przyciski w Messageboxie?

https://msdn.microsoft.com​/pl-pl/library/windows/desktop​/ms645505(v=vs.85).aspx


Return value

Type: int
If a message box has a Cancel button, the function returns the IDCANCEL value if either the ESC key is pressed or the Cancel button is selected. If the message box has no Cancel button, pressing ESC has no effect.
If the function fails, the return value is zero. To get extended error information, call GetLastError.
If the function succeeds, the return value is one of the following menu-item values.
Ta funkcja zwraca wartość, po jej porównaniu opalasz dowolną funkcję względem dowolnego wyniku.
P-159710
MaGicSuR
Temat założony przez niniejszego użytkownika
» 2017-04-02 20:02:53
No tak, ale jak mam zdefiniować, ze jak kliknę OK to mnie przerzuca do linku?
P-159715
Bielan
» 2017-04-02 20:11:23
C/C++
auto result = MessageBox...

if( result ==...)
{
    FunkcjaWywolujacaPrzeniesienieDoLinku();
}
?
P-159717
MaGicSuR
Temat założony przez niniejszego użytkownika
» 2017-04-02 20:25:02
Teraz to wygląda tak:
C/C++
auto result = MessageBox;

if( result == MB_OK )
{
    ShellExecute( NULL, "open", "http://...", "", "", SW_SHOWNORMAL );
}
a i tak nie otwiera linku...

A wgl jak zrobić żeby w samym boxie wyświetlał się link a nie tekst bo wiem, że się da.
P-159722
Bielan
» 2017-04-02 20:31:24
Oczywiście, że nie działa ponieważ kod jest zły.


C/C++
auto result = MessageBox;

Co to ma niby według ciebie zrobić?

Podałem ci schemat a ty bezmyślnie go przepisałeś. Jeżeli sprawia ci problem połączenie aktualnych informacji to polecam zacząć od czegoś prostszego: » KursyKurs C++ kurs
P-159724
karambaHZP
» 2017-04-02 20:39:23
Gdybyś zajrzał do podrzuconego linku wiedziałbyś, że
if( result == MB_OK )
 nie ma sensu i należy go napisać tak:
if( result == IDOK )
P-159726
MaGicSuR
Temat założony przez niniejszego użytkownika
» 2017-04-02 21:02:01
argument of type "LPCWSTR" is incompatible with parameter of type "LPCSTR"
P-159729
« 1 » 2
  Strona 1 z 2 Następna strona