Skocz do zawartości

Gdzie mam to wpisac?


Solmis

Rekomendowane odpowiedzi

  HWND hListBox = CreateWindowEx(WS_EX_CLIENTEDGE, "LISTBOX", NULL, WS_CHILD | WS_VISIBLE | WS_BORDER, 5, 5, 150, 200, hwnd, NULL, hInstance, NULL);

SendMessage(hListBox, LB_ADDSTRING, 0, (LPARAM)"Szarlotka");
SendMessage(hListBox, LB_ADDSTRING, 0, (LPARAM)"Piernik");
case WM_COMMAND:
if((HWND)lParam == g_hPrzycisk)
  MessageBox(hwnd, "Składniki:...", "Piernik", MB_ICONINFORMATION);
break;

 

Co tu jest źle?

:sp_ike: :sp_ike: :sp_ike:

Powiedzcie mi, jak wiecie, bo mam problem.

 

Zawsze nie chce sie skompilowac: 2 errors

 

Line | Unit | Message

------------------------------------------------------------------------------

 

53 main3.cpp case label `273' not within a switch statement.

 

53 main3.cpp confused by earlier errors, bailing out

 

Pomoże ktoś? :P

 

 

---------------------------------------------------

Projekty:

 

Master Cooker - 3%

Tyrasig - 20%

Hewed racing - 67%

AI - 27%

xD =P xP

Odnośnik do komentarza
Udostępnij na innych stronach

Respect że chce ci się bawić WinApi ...

Chodzi tu chyba o to, że nie możesz na samym końcu po IFie umieścić break; bo to jest instrukcja do funkcji CASE. Zamiast tego daj tam: return 0; (chyba tak to jest w C++, możliwe że będzie bez zero myli mi się z C# :) )

Odnośnik do komentarza
Udostępnij na innych stronach

Respect że chce ci się bawić WinApi ...

Chodzi tu chyba o to, że nie możesz na samym końcu po IFie umieścić break; bo to jest instrukcja do funkcji CASE. Zamiast tego daj tam: return 0; (chyba tak to jest w C++, możliwe że będzie bez zero myli mi się z C# :) )

 

Nie o to chodzi, bo sprawdzałem, to samo. :( :( :( :(

 

 

---------------------------------------------------

Projekty:

 

Master Cooker - 3%

Tyrasig - 20%

Hewed racing - 67%

AI - 27%

xD =P xP

Odnośnik do komentarza
Udostępnij na innych stronach

  • Filar Społeczności
53 main3.cpp case label `273' not within a switch statement.
dyrektywę case używa się tylko i wyłącznie w strukturze warunkowej switch:

 

switch ( zmienna )
{
case wartość1: ...; break;
case wartość2: ...; break;
....
default: ....; break;
}

 

Dałeś samo case, a gdzie reszta switch'a?

Odnośnik do komentarza
Udostępnij na innych stronach

switch(hwnd)
{
case WM_COMMAND:
if((HWND)lParam == Szarlotka)
  MessageBox(hwnd, "Nacisnąłeś przycisk!", "Ha!", MB_ICONINFORMATION);
  break;
  default;
  }
SendMessage(hListBox, LB_ADDSTRING, 0, (LPARAM)"Piernik")

 

To nie wchodzi...

Widocznie pisać nie potrafię... :( :(

dobra, do rzeczy...

 

Jakiego mam do tego switcha wziac??

Bo nie bardzo chcą mi jakies wejsc.

:( :( :(

 

---------------------------------------------------

Projekty:

 

Master Cooker - 8%

Tyrasig - 20%

Hewed racing - 67%

AI - 27%

xD =P xP

Odnośnik do komentarza
Udostępnij na innych stronach

Switch to nie żaden hwnd! Bierzesz się za WinApi, a po drodze zgubiłeś podstawy.

 

Piszesz coś takiego:

switch(nazwa_zmiennej) { // Jeśli zmienna jest typu string, to zamiast liczb, możesz pisać: case "tekst_tekst":  itd
Case 1:
// jakas akcja
break;
Case 2:
// inna akcja itd
break;
default :
// czyli to się stanie w przecuwnym wypadku
}

Jakież to proste :D

Odnośnik do komentarza
Udostępnij na innych stronach

Niby jak???!!!!!!!!!!

Nie wchodzi!!

 

Nic takiego nie wchodzi:

 

switch(string)// Jeśli zmienna jest typu string, to zamiast liczb, możesz pisać: case "tekst_tekst": itd
{
HWND hListBox = CreateWindowEx(WS_EX_CLIENTEDGE, "LISTBOX", NULL, WS_CHILD | WS_VISIBLE | WS_BORDER, 5, 5, 150, 200, hwnd, NULL, hInstance, NULL);

SendMessage(hListBox, LB_ADDSTRING, 0, (LPARAM)"Szarlotka");

case WM_COMMAND:
if((HWND)lParam == g_hPrzycisk)
essageBox(hwnd, "Szarlotka", "Ha!", MB_ICONINFORMATION);
// jakas akcja
break;
SendMessage(hListBox, LB_ADDSTRING, 0, (LPARAM)"Piernik");
case WM_COMMAND:
if((HWND)lParam == g_hPrzycisk)
essageBox(hwnd, "Piernik", "Ha!", MB_ICONINFORMATION);
// inna akcja itd
break;
default:
}

 

To zresztą też:

switch(string)// Jeśli zmienna jest typu string, to zamiast liczb, możesz pisać: case "tekst_tekst": itd
{
HWND hListBox = CreateWindowEx(WS_EX_CLIENTEDGE, "LISTBOX", NULL, WS_CHILD | WS_VISIBLE | WS_BORDER, 5, 5, 150, 200, hwnd, NULL, hInstance, NULL);

SendMessage(hListBox, LB_ADDSTRING, 0, (LPARAM)"Szarlotka");

case WM_COMMAND:
if((HWND)lParam == "Szarlotka")
essageBox(hwnd, "Szarlotka", "Ha!", MB_ICONINFORMATION);
// jakas akcja
break;
SendMessage(hListBox, LB_ADDSTRING, 0, (LPARAM)"Piernik");
case WM_COMMAND:
if((HWND)lParam == "Piernik")
essageBox(hwnd, "Piernik", "Ha!", MB_ICONINFORMATION);
// inna akcja itd
break;
default:
}

Odnośnik do komentarza
Udostępnij na innych stronach

W switchu nie wpisujesz typu tylko nazwę.

Poza tym, cały twój kod jest paskudny i pełen bugów. Wróć lpeiej do strukturalnego programowania (o ile od takiego zacząłeś :]) albo ściągnij C++ Buildera który połowę wykona za Ciebie, i nie będziesz musiał się męczyć z WinAPI.

Odnośnik do komentarza
Udostępnij na innych stronach

-.-

Widzę, że od was się niczego nie dowiem. Zamiast mi odpowiedzieć to spamujecie.

Możecie mnie zbanować. To tylko forum.

Blackmaul! Mówiłeś, że tu pełno bugów <lolz>, nieby gdzie, odczytuje błąd ze switchem.

Zresztą szkoda słów! }D

Odnośnik do komentarza
Udostępnij na innych stronach

  • Filar Społeczności

A niby co mamy Ci odpisać? Cały kod tworzenia okna? Weź pierwszy lepszy kurs winapi i zobacz jak to wygląda, bo na moje oko powinien być 3 razy dłuży i na dodatek nie masz pętli odbierającej komunikaty. Ja na pamięć tego nie znam to nie piszę, a przecież nie będę za Ciebie szukał tylko po to by tu wkleić odpowiedź. Napisałeś to tyle dni temu, a ja bym na twoim miejscu już dawno to wyguglował.

Odnośnik do komentarza
Udostępnij na innych stronach

  • Filar Społeczności
Buhahahahah!

 

Myślicie, że ja wam podałem cały kod?

 

Tylko to pokazałem, co konieczne :P czyli gdzie błąd!

Oczywiście. To nie w naszym interesie jest znalezienie błędu tylko w twoim. Po tym kawałku kodu już widzę, że nie umiesz winapi, a po drugie nie podajesz komunikatów błędów:

 

Niby jak???!!!!!!!!!!

Nie wchodzi!!

 

Nic takiego nie wchodzi:

Wchodzić to może **** do ****. Co my jesteśmy jasnowidzami i zawsze wiemy jaki błąd kompilator wypluwa? Z jednej strony oburzasz się jak dziecko, że nie dostajesz odpowiedzi, a z drugiej strony nawet nie dajesz na to szansy, bo nie dokumentujesz dokładnie błędu i nie podajesz wszystkich ważnych informacji.

Odnośnik do komentarza
Udostępnij na innych stronach

Nie no sory, ale ja mam 13 lat! :boxed:

Nie jestem, jakimś kujonem! :]

 

Stary, jak nie będziesz się uczył to sobie conajwyżej symulatory kopania rowów będziesz pisał. W TGF2.

 

Na razie zamiast wkuwać WinApi zapoznaj się po kolei ze wszystkimi programami, naucz się podstaw paru języków programowania i sukcesywnie poszerzaj umiejętności w zakresie komputerów, a potem samo przyjdzie bo będziesz już wszystko rozumiał co do czego się ma i po prostu będzie ci dużo łatwiej. Nawet Ranmus gdzieś napisał że wziął się za programowanie w wieku 17 lat (No chyba że znowu źle przeczytałem, piszę głupoty i zasługuję na pięćset ostrzeżeń). A tak to nauczysz się tego wszystkiego a potem wpadniesz na pomysł żeby się wyspecjalizować w czymś innym i cała ta nauka pójdzie w ***du za przeproszeniem.

 

A co do samego c++ faktycznie, lepiej naucz się podstaw bo śmietnik w kodzie robisz straszny.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...