Skocz do zawartości

LoadIcon


Claw

Recommended Posts

wndclass.style = CS_HREDRAW | CS_VREDRAW;
wndclass.lpfnWndProc = MainWndProc;
wndclass.cbClsExtra = 0;
wndclass.cbWndExtra = 0;
wndclass.hInstance = hInstance;
wndclass.hIcon = LoadIcon(NULL, IDI_WINLOGO);
wndclass.hCursor = LoadCursor(NULL, IDC_ARROW);
wndclass.hbrBackground = (HBRUSH)COLOR_WINDOW;
wndclass.lpszMenuName = NULL;
wndclass.lpszClassName = lpszAppName

to jest moja klasa okna ale ja wiem gdzie to wpisać tylko nie wiem jak??

Link do komentarza
Udostępnij na innych stronach

Przecież masz już tam wpisaną funkcję LoadIcon.
Przypuszczam, że masz ikonkę gdzieś w zasobach i chcesz ją z nich załadować:

//----
wndclass.hIcon = LoadIcon(hInstance, "NAZWA_IKONY") ;
//----

W pierwszym podajesz instancje, a w drugim nazwę ikony w zasobie.
Jeśli nazwą zasobu jest liczba robisz tak:

//----
wndclass.hIcon = LoadIcon(hInstance, MAKEINTRESOURCE(500)) ;
//----

I to na tyle...

Pozdrawiam

Link do komentarza
Udostępnij na innych stronach

Jest trochę inaczej. Ta klasa pochodzi z art'u 'Pierwszy program w WinAPI'
czy coś w tym rodzaju. Teraz chyba macie pojęcie jak początkujący jestem. I chcę dodać do paska tytulowego ikonę która np. nazywa ikona.ico się i jest w katalogu w którym jest plik źródłowy jak to zrobić żeby taką ikonę załadować do paska tytułowego. Chyba z tego co mi się wydaje to trzeba użyć dwie funkcje CreateIcon i LoadIcon tylko jak to zrobić i jakie parametry do tych funkcji podać oraz co one oznaczają??

Link do komentarza
Udostępnij na innych stronach

Witam!
Do załadowania ikony z pliku służy funkcja LoadImage
(możesz nią ładować też kursory i bitmapy)

Ja używam MASM-a wiec mogłem coś sknocić w tłumaczeniu na C++
ale napewno jest to ta funkcja szczególy dotyczące parametrów znajdziesz w helpie

LoadImage( 0, "Nazwa Pliku Ikony", IMAGE_ICON, 0, 0, LR_LOADFROMFILE || LR_DEFAULTSIZE)

Pozdrowienia
kAzek

Link do komentarza
Udostępnij na innych stronach

Witam

Oczywiście one_eddie ma rację wiec poprawny kodzik wygląda tak:

LoadImage(NULL, "Nazwa Pliku Ikony", IMAGE_ICON, NULL, NULL, LR_LOADFROMFILE | LR_DEFAULTSIZE)

Pomyliłem operatory ale tak jak pisałem nie znam dobrze tego języka (jak widać nawet podstaw) :(

Dziekuję za zwrócenie uwagi. Mam nadzieję że wszyscy zainteresowani wybaczą mi ten błąd.

Pozdrowienia
kAzek

Link do komentarza
Udostępnij na innych stronach

Witam

Uwazam,ze nie jest dobrym pomyslem czytanie ikonki z pliku,bo zawsze plik,ktos moze usunac,lepjej ja dodac do zasobow,wtedy sie wkompiluje w execa.Nie jest to trudne.

W Visualu wybierz
Project->Add Resource
Wybierz Icon nastepnie Import
Pojawi ci sie okienko gdzie mozesz wyszukac swoj plik *.ico
Po wskazaniu pliku i wybraniu open ikonka doda sie do zasobow.

Jak obejrzec zasoby?
W Visualu wybierz
View->Resource View

Tam masz takie drzewko zasobow(nazwa_pliku.rc)
Wybierz z niego Icon
Powinno ci sie dodac tam ikonka
Bedziesz widział w tym drzewku jej identyfikator zapewne IDI_ICOIN1

Teraz wystarczy wpisac w programie
zamiast
wndclass.hIcon = LoadIcon(NULL, IDI_WINLOGO);
to
wndclass.hIcon = LoadIcon (hInstance,MAKEINTRESOURCE(IDI_ICON1));

Pozdrawiam.

Link do komentarza
Udostępnij na innych stronach

No to zależy...
W tej troche starszę wersji był edytor zasobów, w menu project, i tam bez problemu mogłeś dodawać ikonkę. (taki fajny edyorek)

Ale najlepiej po prostu otwórz sobie plik z zasobami - z rozszerzeniem rc,
i wpisz nim definicje ikonki, takie cóś:

//----
NAZWA_IKONY ICON "sciezka.ico"
//----

no i potem tylko w programie piszesz:

//-----
wndclass.hIcon = LoadIcon (hInstance, "NAZWA_IKONY") ;
//----

I po kłopocie... ;)

Pozdrawiam

Link do komentarza
Udostępnij na innych stronach

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gość
Odpowiedz...

×   Wkleiłeś zawartość bez formatowania.   Usuń formatowanie

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Utwórz nowe...