Ikona projektu - MS Visual C++

0

Witam.

Mam problem, przewaliłem sporą część internetu i nie mogę znaleźć odpowiedzi.
Mam projekt w bibliotece SDL, więc bez windowsowych bajerów, i chcę dodać ikonkę do projektu.
Jak to uczynić?

0

Nie znam SDL, ale tak najogólniej to robi się to przy rejestracji okna twojej aplikacji. Przykład z projektu wygenerowanego przez VS2010 Express:
WNDCLASSEX wcex;

wcex.cbSize = sizeof(WNDCLASSEX);

wcex.style			= CS_HREDRAW | CS_VREDRAW;
wcex.lpfnWndProc	= WndProc;
wcex.cbClsExtra		= 0;
wcex.cbWndExtra		= 0;
wcex.hInstance		= hInstance;
wcex.hIcon			= LoadIcon(hInstance, MAKEINTRESOURCE(IDI_CPPWINSANDBOX));
wcex.hCursor		= LoadCursor(NULL, IDC_ARROW);
wcex.hbrBackground	= (HBRUSH)(COLOR_WINDOW+1);
wcex.lpszMenuName	= MAKEINTRESOURCE(IDC_CPPWINSANDBOX);
wcex.lpszClassName	= szWindowClass;
wcex.hIconSm		= LoadIcon(wcex.hInstance, MAKEINTRESOURCE(IDI_SMALL));

return RegisterClassEx(&wcex);

Chodzi o hIcon i hIconSm:
http://msdn.microsoft.com/en-us/library/windows/desktop/ms633577%28v=vs.85%29.aspx

0

A jaki plik .h będzie do tego potrzebny?
Bo w sumie programy z SDL to tylko podstawowe biblioteki znane z konsoli + biblioteki sdl.

0

Do rejestracji okna - windows.h.
Oprócz tego - identyfikatory zasobów są zdefiniowane w resources.h, np.:
#define IDI_CPPWINSANDBOX 107
#define IDI_SMALL 108

Następnie mamy plik np. MyApplication.rc, który includuje resources.h i definiuje nasze ikony:
IDI_CPPWINSANDBOX ICON "CppWinSandbox.ico"
IDI_SMALL ICON "small.ico"

W pliku, gdzie rejestrujemy okno naszej aplikacji (np. MyApplication.cpp), includujemy resources.h i używamy wymienionych identyfikatorów przy rejestracji okna.

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