Win32 Load Background Image – C / C++ – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Win32 Load Background Image – C / C++ – Fórum – Programujte.comWin32 Load Background Image – C / C++ – Fórum – Programujte.com

 

Toto vlákno bylo označeno za vyřešené.
Kenvelo+2
Super člen
29. 12. 2015   #1
-
0
-

Zdravím pokouším se do appky nahrát Logo ale bohužel bez úspěchu. Vše se v pořádku zkompiluje ale logo se nezobrazí.

Zde je kod.

#include <windows.h>

HBITMAP hBitmap = NULL;

LRESULT CALLBACK WinProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam);

int WINAPI WinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR lpCmdLine, int nShowCmd)
{
	....
}

LRESULT CALLBACK WinProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
	int wmId, wmEvent;

	switch (msg)
	{

	case WM_CREATE: // Vytvořit událost
	{
		hBitmap = (HBITMAP)LoadImage(NULL, "C:\\Users\\Logo.bmp", IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE);
		....
	}
	break;
	case WM_PAINT:
	{
		PAINTSTRUCT 	ps;
		HDC 			hdc;
		BITMAP 			bitmap;
		HDC 			hdcMem;
		HGDIOBJ 		oldBitmap;

		hdc = BeginPaint(hWnd, &ps);

		hdcMem = CreateCompatibleDC(hdc);
		oldBitmap = SelectObject(hdcMem, hBitmap);

		GetObject(hBitmap, sizeof(bitmap), &bitmap);
		BitBlt(hdc, 0, 0, bitmap.bmWidth, bitmap.bmHeight, hdcMem, 0, 0, SRCCOPY);

		SelectObject(hdcMem, oldBitmap);
		DeleteDC(hdcMem);

		EndPaint(hWnd, &ps);

	}

	break;
	case WM_DESTROY:
	{
		DeleteObject(hBitmap);
		PostQuitMessage(0);
		return 0;
	}

Předem děkuji

Nahlásit jako SPAM
IP: 89.177.212.–
Díky bohu, že počítače vymysleli muži. Kdyby to byly ženy, tak binární soustavu reprezentují jedničky, nuly a "možná"
Radek Chalupa
~ Redaktor
+1
Super člen
29. 12. 2015   #2
-
0
-

#1 Kenvelo
A okno se zobrazí? Zkusil jsi odkrokovat a otestovat návratové hodnoty, především hBitmap?

Radek Chalupa
- individuální konzultace, školení programování (C/C++, WinAPI, COM, ActiveX, ATL, C#, NET Framework, MFC)
- vývoj software na zakázku
http://www.radekchalupa.cz

Nahlásit jako SPAM
IP: 89.177.51.–
Kenvelo+2
Super člen
30. 12. 2015   #3
-
0
-

#2 Radek Chalupa
Ano vše se zobrazí buttony fungují prostě vše ok ale logo se nevykreslí

Nahlásit jako SPAM
IP: 89.177.220.–
Díky bohu, že počítače vymysleli muži. Kdyby to byly ženy, tak binární soustavu reprezentují jedničky, nuly a "možná"
Kenvelo+2
Super člen
30. 12. 2015   #4
-
0
-

#2 Radek Chalupa
Tak problém vyřešen, zkusil sem obrázek loga vložit do jiného programu a znova přepsat jako bmp a zobrazil se takže problém mi dělal photoshop který uložil původní verzi bmp

Nahlásit jako SPAM
IP: 89.177.220.–
Díky bohu, že počítače vymysleli muži. Kdyby to byly ženy, tak binární soustavu reprezentují jedničky, nuly a "možná"
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 5 hostů

Podobná vlákna

Background image — založil Sarumanes

Problém s background-image. — založil matus9595

C++ a winform background-image... — založil Anonymní uživatel

Background u Win32 GUI — založil Mega.Lama

Moderátoři diskuze

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý