Fenster Sichtbar - aber nicht in der Taskleiste
-
huhu...
ich habe zur zeit ein kleines fenster (mit windows-skinning) welches
sich über den desktop bewegt (das fenster ist trnasparent und man sieht nur eine kleine figur...)nur wenn sich die figur bewegt soll es natürlich so aussehen, als sei es kein fenster. wie kann ich das fenster sichtbar lassen - jedoch aus der taskleiste entfernen?
danke...
-
Hier gibt es zwei Möglichkeiten:
1. WS_EX_TOOLWINDOW Extended-Style
2. Du erzeugst eine Hidden-Window, und machst Dein eigentlichen Window zum Child dieses Hidden-Windows...
-
hmm ich habe es mal bei ein par offenen fenstern
versucht allerdings kommt was anderes bei rum
die buttons der fenster in der taskleiste haben kein symbol mehr und
reagieren auch ganz anders als normal. sind aber immernoch da!ich habs mit diesem code gemacht:
SetWindowLong(hWnd,GWL_EXSTYLE,WS_EX_TOOLWINDOW);
-
Upps... sorry... es geht natürlich viel einfacher:
Nimm den Style "WS_EX_APPWINDOW" weg...
-
naja ich finde diesen ausdruck WS_EX_APPWINDOW nirgens!
ich arbeite auch mit windows-skinning und meine funktion zum
generieren des fensters mit dem eigenen skin ist folgende:// ------------------------------------------------------------------------ // A Basic, still smart window creation function. // ------------------------------------------------------------------------ bool MakeWindow(int iWidth, int iHeight) { // our window class WNDCLASS wndWc; // --------------------------------------------------------- // fill window class members // --------------------------------------------------------- wndWc.style = CS_OWNDC; wndWc.lpfnWndProc = (WNDPROC) WndProc; wndWc.cbClsExtra = 0; wndWc.cbWndExtra = 0; wndWc.hInstance = GetModuleHandle(NULL); wndWc.hIcon = NULL; wndWc.hCursor = LoadCursor(0, IDC_ARROW); wndWc.hbrBackground = NULL; wndWc.lpszMenuName = NULL; wndWc.lpszClassName = "w32skin"; // register class if (!RegisterClass(&wndWc)) return false; // --------------------------------------------------------- // get actual screen resolution int iSw = (WORD)GetSystemMetrics(SM_CXSCREEN); // width int iSh = (WORD)GetSystemMetrics(SM_CYSCREEN); // height // make a rectangle on the center of the screen RECT rc = { (iSw - iWidth)/2, (iSh - iHeight)/2, iWidth, iHeight }; // create the window. // note the WS_POPUP flag, no caption, no borders, no nothing. hWnd = CreateWindow("w32skin", "w32skin", WS_POPUP, rc.left,rc.top, iWidth,iHeight, NULL, NULL, GetModuleHandle(NULL), NULL); // return result return (hWnd?true:false); }habe alles von hier:
http://www.flipcode.com/articles/article_win32skins.shtmldanke!
-
tjo ... wo ist das Problem ?! GetWindowLong SetWindowLong ...
Oder halt einfach mit WNDCLASSEX und CreateWindowEx ... dann als Extended Style WS_EX_TOOLWINDOW angeben und schon, oh wunder... es geht... wie Jochen aber schon sagte -.-
-
oh man ich habs irgendwie verdreht

danke an euch! klappt super!