C++ Fullscreen Fenster ??

07/19/2013 02:46 Fabi.StaR#1
Guten Abend/Morgen.

Ich frag mich wie ich ein Full Screen Fenster erstelle Ohne rand wie zb. hier:

[Only registered and activated users can see links. Click Here To Register...]

also das man nur das spiel / Programm sehen kann.

ich hoffe mir kann jemande helfen.

mfg. Fabi.StaR :confused:
07/19/2013 02:52 .SkyneT.#2
[Only registered and activated users can see links. Click Here To Register...]
07/19/2013 02:54 Fabi.StaR#3
Und wie genau?
07/19/2013 03:00 マルコ#4
Ich nehme an, du programmierst für Windows. Und benutzt das WinAPI. In diesem Fall empfehle ich dir, Brain.exe zu benutzen. Das visualisiert dir in einer knalligen Farbe die Funktion, mit der du das Fenster erstellst. Und Brain.exe sucht dir sogar automatisch per Google eine Seite raus, die dir erklärt, was die Parameter bewirken. Zum Beispiel die hier:
[Only registered and activated users can see links. Click Here To Register...]

Dort setzt dann Brain.exe wieder eine grelle Farbe ein, sobald dein Blick auf den Parameter "Style" oder "ExStyle" fällt.
Brain.exe hat einen einfachen Screenreader integriert, der Informationen sammelt. Hierdurch wird dir klar gemcht, dass durch angeben von bestimmten Parametern an dieser Stelle ein Rand erzeugt wird. Diese Infos werden ausgewertet zu "Gib keinen Border Parameter an, dann ist kein Border da".

Siehst du, wie einfach und gut Brain.exe funktioniert? Es beinhaltet tatsächliuch alles, was ein Programmierer braucht. Und noch viel mehr. Es ist dein praktischer Helfer in jeder Lebenslage, ob beim Unterhose anziehen, oder Popo putzen - ja sogar beim Schuhe binden!

Lad es dir besser schnell runter :)
07/19/2013 03:08 .SkyneT.#5
Ich darf einfach nicht erwarten das man die Erklärung auf msdn versteht,
oder es zumindest versucht... :|

Etwas wie "createwindowex without border" in google hätte es btw auch getan.
07/19/2013 03:14 Fabi.StaR#6
Sorry aber ich bekomm es nicht hin ihr der code:


Code:
#include <Windows.h>

#define ERROROK(msg) MessageBox(NULL, msg, "ERROR", MB_OK)

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

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
{
	HWND		hWnd;
	MSG			msg;
	WNDCLASS	WndClass;
	char *szAppName = "GhostShot";

	WndClass.style					= CS_HREDRAW | CS_VREDRAW;
	WndClass.lpfnWndProc			= WndProc;
	WndClass.cbClsExtra				= 0;
	WndClass.cbWndExtra				= 0;
	WndClass.hInstance				= hInstance;
	WndClass.hIcon					= LoadIcon(NULL, IDI_APPLICATION);
	WndClass.hCursor				= LoadCursor(NULL, IDC_ARROW);
	WndClass.hbrBackground			= (HBRUSH) GetStockObject(BLACK_BRUSH);
	WndClass.lpszMenuName			= NULL;
	WndClass.lpszClassName			= szAppName;

	GetSystemMetrics(SM_CXSCREEN);

	if(!RegisterClass(&WndClass))
	{
		ERROROK("Can't register Window Class!");

		return 0;
	}

	hWnd = CreateWindowEx();

	return msg.wParam;
}
Ich habe es jetzt so:

Code:
#include <Windows.h>

#define ERROROK(msg) MessageBox(NULL, msg, "ERROR", MB_OK)

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

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
{
	MSG			msg;
	WNDCLASS    wc={0};

    wc.lpszClassName			= "GhostShot";
    wc.lpfnWndProc				= DefWindowProc;//You MUST use your own wndproc here
    wc.hInstance				= hInstance;
    wc.hbrBackground			= (HBRUSH) GetStockObject(BLACK_BRUSH);
    wc.hCursor=LoadCursor(NULL,IDC_ARROW);
    if (!RegisterClass(&wc)) {/*Handle Error*/}
    HWND hwnd;
    hwnd=CreateWindowEx(0,wc.lpszClassName,0,WS_POPUP|WS_VISIBLE|WS_SYSMENU,9,9,99,99,0,0,0,0);
    if (!hwnd) {/*Handle Error*/}
    while(GetMessage(&msg,0,0,0)>0)DispatchMessage(&msg);
    return 0;
}
aber es kommt nur so ein Kleines Fenster
07/19/2013 03:27 .SkyneT.#7
Quote:
Originally Posted by Fabi.StaR View Post
aber es kommt nur so ein Kleines Fenster
Code:
  
  _In_      DWORD dwExStyle,
  _In_opt_  LPCTSTR lpClassName,
  _In_opt_  LPCTSTR lpWindowName,
  _In_      DWORD dwStyle,
  _In_      int x,
  _In_      int y,
  _In_      int nWidth,
  _In_      int nHeight,
  _In_opt_  HWND hWndParent,
  _In_opt_  HMENU hMenu,
  _In_opt_  HINSTANCE hInstance,
  _In_opt_  LPVOID lpParam
Und jetzt rate einmal welche Parameter für die Größe, genauer
gesagt für die Höhe und die Breite des Fensters, verantwortlich sind...
07/19/2013 03:30 マルコ#8
Sei nich so hart mit ihm, wahrscheinlich kann er Brain.exe nicht installieren.

Das Problem tritt manchmal auf. Bei ein paar wenigen Leuten. Bisher ist kein Bugfix bekannt. Nja, aber die Entwickler arbeiten derzeit glaub an Version 2.0 . Wirst also noch warten müssen...
07/19/2013 03:47 Fabi.StaR#9
hab es hin bekommen :D

hir mein code :

Code:
include <Windows.h>

#define ERROROK(msg) MessageBox(NULL, msg, "ERROR", MB_OK)

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

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
{
	HWND		hwnd;
	MSG			msg;
	WNDCLASS    wc={0};
	RECT		rect;
	int iWidht;
	int iHight;

	HWND hWndDesktop = GetDesktopWindow();
	GetWindowRect(hWndDesktop, &rect);
	iWidht = rect.right;
	iHight = rect.bottom;

    wc.lpszClassName			= "GhostShot";
    wc.lpfnWndProc				= DefWindowProc;//You MUST use your own wndproc here
    wc.hInstance				= hInstance;
    wc.hbrBackground			= (HBRUSH) GetStockObject(BLACK_BRUSH);
    wc.hCursor=LoadCursor(NULL,IDC_ARROW);
    if (!RegisterClass(&wc)) {
		ERROROK("Can't register Window Class!");
		return 0;
	}
    hwnd=CreateWindowEx(0,wc.lpszClassName,0,WS_POPUP|WS_VISIBLE|WS_SYSMENU,CW_USEDEFAULT,CW_USEDEFAULT,iWidht,iHight,0,0,0,0);
    if (!hwnd) {
	}
    while(GetMessage(&msg,0,0,0)>0)DispatchMessage(&msg);
    return 0;
}
07/19/2013 12:49 Padmak#10
Quote:
Originally Posted by マルコ View Post
Sei nich so hart mit ihm, wahrscheinlich kann er Brain.exe nicht installieren.

Das Problem tritt manchmal auf. Bei ein paar wenigen Leuten. Bisher ist kein Bugfix bekannt. Nja, aber die Entwickler arbeiten derzeit glaub an Version 2.0 . Wirst also noch warten müssen...
Sorry, aber ernsthaft. Diese Brain.exe-Witze sind in diesem Ausmaß einfach nicht mehr lustig..

@TE:
Bist du dir sicher, dass du programmieren solltest, wenn du Google nicht einmal die Antwort auf eine so einfache Frage entlocken kannst?

Padmak