Hintergrundbild einfuegen?

tetzlaff

Grünschnabel
Ich bin Anfänger in C++. Wie fügt man am einfachsten ein Hintergrundbild ein? Bitte Programmbeispiel mit ausführlicher Erklärung.
 
Wo willste das denn einfügen ? in den Windows Hintergrund oder als Hintergrund in dein Programm ?

Und dann wieder die Fragen weil du die "Wie stelle ich eine Frage richtig" nicht gelesen hast...

Betriebssystem, Entwicklungsumgebung ?
 
Sorry, natürlich als Hintergrund in meinem Programm. Ich frage das erste mal in diesem Forum, habe die Rubrik "Wie frage ich richtig" noch nicht gelesen.
 
moin


Sorry, natürlich als Hintergrund in meinem Programm

Ahhhhja, jetzt wissen wir leider auch nciht viel mehr als vorher.
Beantworte mal folgende Fragen:
Welche Sprache (C/C++/MFC/API)?
Eine Konsolenanwendung?
Welcher Compiler?
Welche IDE?
Welches Betriebssystem?

Wenn du schon ein Beispiel mit ausführlicher Beschreibung haben willst (übrigens will man nciht, man möchte!), dann muss erstmal was von dir kommen, weil sonst keiner helfen kann.


mfg
umbrasaxum
 
Win32 Konsolenanwendung, C++,
Betriebssystem Windows XP Home,
Microsoft Visual Studio C++ 6.0



Wer hat geschrieben ich will?
:mad:
 
Es hat leider nicht funktioniert.
Kann mir bitte jemand einen einfachen Code schreiben, so das ihn auch ein Anfänger versteht?
 
moin


Wirklich verstehen kann man das nur mit dem nötigen Grundwissen.

Einfacher geht es nicht:
Code:
#include <windows.h>
#include <iostream>


void main(void)
{
	SetConsoleTitle("Bild");
	HWND hWnd = FindWindow(NULL, "Bild");
	
	HDC hDC = GetDC(hWnd);
	
	HBITMAP hBitmap = (HBITMAP)LoadImage(0, "karten.bmp", IMAGE_BITMAP, 0, 0,
				LR_CREATEDIBSECTION | LR_DEFAULTSIZE | LR_LOADFROMFILE);
	
	HDC hdcmem = CreateCompatibleDC(hDC);
	
	SelectObject(hdcmem, hBitmap);

	BitBlt(hDC, 0, 0, 100, 100,
				hdcmem, 0, 0, SRCCOPY);

	ReleaseDC(hWnd, hDC);
	DeleteObject(hBitmap);
	


	std::cin.get();
}


mfg
umbrasaxum
 
std::cin.get();

Bei dieser Zeile habe ich folgende Fehlermeldung bekommen:

Keine Klasse oder Namespace.

Das Hintergrundbild wurde in meinem C++ Editor angezeigt, nicht in dem von mir programmierten Programm. Das Fenster war schwarz.
 
moin


Dann konnte das Bild wohl nicht gefunden werden, versuch nochmal folgendes.
Code:
#include <windows.h>
#include <iostream.h>


void main(void)
{
	SetConsoleTitle("Bild");
	HWND hWnd = FindWindow(NULL, "Bild");

	HDC hDC = GetDC(hWnd);

	HBITMAP hBitmap = (HBITMAP)LoadImage(0, "karten.bmp", IMAGE_BITMAP, 0, 0,
		LR_CREATEDIBSECTION | LR_DEFAULTSIZE | LR_LOADFROMFILE);

	if(!hBitmap)
		MessageBox(hWnd, "Bild nicht gefunden!", "Fehler", NULL);

	HDC hdcmem = CreateCompatibleDC(hDC);

	SelectObject(hdcmem, hBitmap);

	BitBlt(hDC, 0, 0, 100, 100,
		hdcmem, 0, 0, SRCCOPY);

	ReleaseDC(hWnd, hDC);
	DeleteObject(hBitmap);

	cin.get();
}


mfg
umbrasaxum
 
Zurück