Solved

modifying WS_EX_TOOLWINDOW and taskbar

Posted on 1998-12-15
8
686 Views
Last Modified: 2013-11-20
I need to have a window that can toggle between not showing
a button on the taskbar, and showing a button on the taskbar. So I change the window extended style with ModifyStyleEx and WS_EX_TOOLWINDOW. But the taskbar doesn't seem to update after I remove the WS_EX_TOOLWINDOW style. The button still exists (alltough no icon is showing) and when the program exits. It leavs a ghost button that dissapears when I press it. I'd like some tips on how to force the taskbar to comply with my window style

// everlast
0
Comment
Question by:everlast
8 Comments
 
LVL 1

Expert Comment

by:The_Brain
ID: 1326230
Did you use a wizard to get it?  
there is a possible solution, you only removed the icon.  The removing is just to update the toolbar, override the function call it yourself to repaint.  (over paint) and do it again.
i can't help more than that for now. :(


0
 
LVL 2

Expert Comment

by:wyy_cq
ID: 1326231
this is a bug of windows95,
sometime when the screen saver quit you will encounter the same thing.

there are two tips:
1 a window hides , the button on taskbar will dissapear at once.
2 add the icon to system tray , and not show the button on the taskbar at the application starts.
0
 

Expert Comment

by:needhlp1
ID: 1326232
How do you make it so it DOESN'T show in the task bar?

I don't know how to ModifyStyleEx and WS_EX_TOOLWINDOW.

0
 

Author Comment

by:everlast
ID: 1326233
wyy_cq, there has got to be a way to remove the taskbar button on the fly programmaticaly. The main problem isn't the ghost button when the program exits, but that the taskbar doesn't remove the button when I set WS_EX_TOOLWINDOW dynamicaly. When I press Alt+Tab, the program icon doesn't show(what's what I want).
So apprently, it's the taskbar that doesn't update. Maybe I can send some message to the taskbar window to force it to update?
0
How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

 

Author Comment

by:everlast
ID: 1326234
The_brain, I'm not sure I understand your comment, what function call do you mean? I have though about drawing the caption myself and intercept the WM_NCHITTEST message to emulate. That might be the only solution.
0
 

Author Comment

by:everlast
ID: 1326235
Adjusted points to 200
0
 

Accepted Solution

by:
dagangwang earned 200 total points
ID: 1326236
1. Use FindWindow( "Shell_TrayWnd", .... to find the window ( TaskBar )  where buttons in;
2. Find your window tabctrl ID in TaskBar;
3. change   window extended style with ModifyStyleEx and WS_EX_TOOLWINDOW;
4. Use TabCtrl_DeleteItem to delete your tabctrl in TaskBar

   
0
 

Author Comment

by:everlast
ID: 1326237
thanx...  I've allready found an answer though, your answer covers my question, but fails to add a button in the taskbar when I remove the WS_EX_TOOLWINDOW style. What I realy needed to do was hide the window with ShowWindow, modify the style, the show it again.
0

Featured Post

IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

Suggested Solutions

Title # Comments Views Activity
Expand LInux Boot partition remotly 3 78
Pressing cancel button with C# UI Automation 3 40
sameEnds challenge 3 107
noX challenge 17 77
Introduction: Hints for the grid button.  Nested classes, templated collections.  Squash that darned bug! Continuing from the sixth article about sudoku.   Open the project in visual studio. First we will finish with the SUD_SETVALUE messa…
Have you tried to learn about Unicode, UTF-8, and multibyte text encoding and all the articles are just too "academic" or too technical? This article aims to make the whole topic easy for just about anyone to understand.
This video will show you how to get GIT to work in Eclipse.   It will walk you through how to install the EGit plugin in eclipse and how to checkout an existing repository.
Here's a very brief overview of the methods PRTG Network Monitor (https://www.paessler.com/prtg) offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…

747 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now