RE: [DUG]: Change the settings of the Taskbar
... reminds me of the saying: "there are two ways of being well off - one is to have more, the other is to need less" I guess I'm in the "have more" camp. Max snip You'd be surprised perhaps. I constantly experience problems with people's web pages at 800x600 that assume my screen has a minimum area. It is not that you get scroll bars, but that you don't. The pages are designed to fit on a minimum screen area and if your screen happens to be of less height then part of the page won't display and no scroll bars are displayed. People on 640x480 would have even more problems. I run IE with the full size button bar, the links bar and address bar and status bar, and that doesn't leave enough height on the 800x600 screen for some of these web pages that I visit. But I am used to screen area problems because I run a double height taskbar with the IE address bar and quick launch toolbars on the top row. Then I drag the IE address bar up next to the menu bar to give me extra height in IE but it still doesn't work with these web pages. Why do people assume your screen will always be 800x600 and your taskbar will always be a fixed height and you will have no other appbars? Some people run the Office toolbar on their screens as well. It is so simple to put scrollbars on your app or webpages when they don't have enough area available to display normally. Patrick Dunford, Christchurch, NZ http://patrick.dunford.com/ --- New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz --- New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz
RE: [DUG]: Change the settings of the Taskbar
Indeed Patrick. And to further complicate matters we want to do this for some-one elses application. Personally I'd change screen resolutions and/or buy a bigger monitor - this sort of thing should only be an issue at 640 x 480. We could all have done so with the time we have spent not finding a solution. Max -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of [EMAIL PROTECTED] Sent: Thursday, 29 July 1999 12:16 To: Multiple recipients of list delphi Subject: RE: [DUG]: Change the settings of the Taskbar Quoting Max Renshaw-Fox [EMAIL PROTECTED]: [Patrick Said] Have a program send the message ABN_FULLSCREENAPP setting the lparam to TRUE when the application goes to fullscreen and send it again with lparam set to FALSE to restore the taskbar. This will also hide/unhide any other appbars that are open on the desktop. For more info look up ABN_FULLSCREENAPP in the Win32 SDK help file [] Or hook the message queue and respond to that The appbar(s) (including the Taskbar) are to respond to this message by changing their z-order so they fall to the bottom. An application window can then go full-screen by occupying the space normally occupied by appbars. I think the key question to ask is, who is responsible for sending the message, for example does the OS send it in response to something else, and does it send the message to each appbar. --- New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz --- New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz
RE: [DUG]: Change the settings of the Taskbar
-Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Max Renshaw-Fox Sent: Friday, 30 July 1999 13:44 To: Multiple recipients of list delphi Subject: RE: [DUG]: Change the settings of the Taskbar Indeed Patrick. And to further complicate matters we want to do this for some-one elses application. Personally I'd change screen resolutions and/or buy a bigger monitor - this sort of thing should only be an issue at 640 x 480. We could all have done so with the time we have spent not finding a solution. snip You'd be surprised perhaps. I constantly experience problems with people's web pages at 800x600 that assume my screen has a minimum area. It is not that you get scroll bars, but that you don't. The pages are designed to fit on a minimum screen area and if your screen happens to be of less height then part of the page won't display and no scroll bars are displayed. People on 640x480 would have even more problems. I run IE with the full size button bar, the links bar and address bar and status bar, and that doesn't leave enough height on the 800x600 screen for some of these web pages that I visit. But I am used to screen area problems because I run a double height taskbar with the IE address bar and quick launch toolbars on the top row. Then I drag the IE address bar up next to the menu bar to give me extra height in IE but it still doesn't work with these web pages. Why do people assume your screen will always be 800x600 and your taskbar will always be a fixed height and you will have no other appbars? Some people run the Office toolbar on their screens as well. It is so simple to put scrollbars on your app or webpages when they don't have enough area available to display normally. Patrick Dunford, Christchurch, NZ http://patrick.dunford.com/ --- New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz
RE: [DUG]: Change the settings of the Taskbar
Correction: this message gets sent to appbars when an application goes full-screen, but the mechanism of how an application tells Windows that it is going full screen is unknown to me, it is probably in the Windows function group in the API. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of [EMAIL PROTECTED] Sent: Wednesday, 28 July 1999 13:56 To: Multiple recipients of list delphi Subject: Re: [DUG]: Change the settings of the Taskbar Quoting gajo [EMAIL PROTECTED]: OK OK, let me explain it to you again! The program that starts is NOT writen by me, so I cannot change it's FormStyle directly. Therefore I want to make the TASKBAR to go to back, or to make it's FormStyle fsNormal. OK, if you still don't get it, then here's an example: I start Notepad and I maximize it. But it's not fullscreen, because Notepad is not made to act like that, and because of that the Taskbar is still visible (Always On Top turned ON). Now I DON'T want this, I want the Notepad to be the only visible thing on my screen! I hope it's clear now. The only thing I can do is to get the handle of the Taskbar, but I don't know how to use that handle to send the Taskbar to BACK or to make it's FormStyle fsNormal. The solution is probably, as George already said, in the SHAppBarMessage procedure, but I don't know how to use that procedure. So, any solutions? Have a program send the message ABN_FULLSCREENAPP setting the lparam to TRUE when the application goes to fullscreen and send it again with lparam set to FALSE to restore the taskbar. This will also hide/unhide any other appbars that are open on the desktop. For more info look up ABN_FULLSCREENAPP in the Win32 SDK help file -- - New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz -- - New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz --- New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz
RE: [DUG]: Change the settings of the Taskbar
[Patrick Said] Have a program send the message ABN_FULLSCREENAPP setting the lparam to TRUE when the application goes to fullscreen and send it again with lparam set to FALSE to restore the taskbar. This will also hide/unhide any other appbars that are open on the desktop. For more info look up ABN_FULLSCREENAPP in the Win32 SDK help file [] Or hook the message queue and respond to that Max --- New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz
RE: [DUG]: Change the settings of the Taskbar
Be aware that ABN_FULLSCREENAPP is not a windows message. It IS a message, but it is sent to a special callback function that a taskbar sets up when it registers itself (and it uses SHAppBarMessage to do this). For your information, ABN_FULLSCREENAPP's value 2 (see ShellAPI.pas), which is the same as the value of the windows message WM_DESTROY. Try firing _that_ around your system ;-). The key seems to be that Windows seems to know when a window is being made full screen, and handles the sending of that message to the callbacks of the taskbar(s). As another application is creating the problem window, there seems to be no easy solution. MSDN suggests that creating special full screen windows (it doesnt say how) is not recommended. It says you're better to tell the user how to select the AutoHide property of the toolbar! Regards, Andrew Cooke. -Original Message- From: Max Renshaw-Fox [SMTP:[EMAIL PROTECTED]] Sent: Thursday, July 29, 1999 8:44 AM To: Multiple recipients of list delphi Subject: RE: [DUG]: Change the settings of the Taskbar [Patrick Said] Have a program send the message ABN_FULLSCREENAPP setting the lparam to TRUE when the application goes to fullscreen and send it again with lparam set to FALSE to restore the taskbar. This will also hide/unhide any other appbars that are open on the desktop. For more info look up ABN_FULLSCREENAPP in the Win32 SDK help file [] Or hook the message queue and respond to that Max -- - New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz --- New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz
RE: [DUG]: Change the settings of the Taskbar
I thought the original issue was to test for when someone elses application was maximised, or became the foreground application, and then set the task bar accordingly. I agree this is not a very sensible thing to do, changing screen resolution is one better solution that comes to mind, but I still would have thought you could hook these messages and respond accordingly. Max -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]]On Behalf Of Cooke, Andrew Sent: Thursday, 29 July 1999 08:49 To: Multiple recipients of list delphi Subject: RE: [DUG]: Change the settings of the Taskbar Be aware that ABN_FULLSCREENAPP is not a windows message. It IS a message, but it is sent to a special callback function that a taskbar sets up when it registers itself (and it uses SHAppBarMessage to do this). For your information, ABN_FULLSCREENAPP's value 2 (see ShellAPI.pas), which is the same as the value of the windows message WM_DESTROY. Try firing _that_ around your system ;-). The key seems to be that Windows seems to know when a window is being made full screen, and handles the sending of that message to the callbacks of the taskbar(s). As another application is creating the problem window, there seems to be no easy solution. MSDN suggests that creating special full screen windows (it doesnt say how) is not recommended. It says you're better to tell the user how to select the AutoHide property of the toolbar! Regards, Andrew Cooke. -Original Message- From: Max Renshaw-Fox [SMTP:[EMAIL PROTECTED]] Sent: Thursday, July 29, 1999 8:44 AM To: Multiple recipients of list delphi Subject: RE: [DUG]: Change the settings of the Taskbar [Patrick Said] Have a program send the message ABN_FULLSCREENAPP setting the lparam to TRUE when the application goes to fullscreen and send it again with lparam set to FALSE to restore the taskbar. This will also hide/unhide any other appbars that are open on the desktop. For more info look up ABN_FULLSCREENAPP in the Win32 SDK help file [] Or hook the message queue and respond to that Max -- - New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz --- New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz --- New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz
RE: [DUG]: Change the settings of the Taskbar
Quoting Max Renshaw-Fox [EMAIL PROTECTED]: [Patrick Said] Have a program send the message ABN_FULLSCREENAPP setting the lparam to TRUE when the application goes to fullscreen and send it again with lparam set to FALSE to restore the taskbar. This will also hide/unhide any other appbars that are open on the desktop. For more info look up ABN_FULLSCREENAPP in the Win32 SDK help file [] Or hook the message queue and respond to that The appbar(s) (including the Taskbar) are to respond to this message by changing their z-order so they fall to the bottom. An application window can then go full-screen by occupying the space normally occupied by appbars. I think the key question to ask is, who is responsible for sending the message, for example does the OS send it in response to something else, and does it send the message to each appbar. --- New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz
Re: [DUG]: Change the settings of the Taskbar
OK OK, let me explain it to you again! The program that starts is NOT writen by me, so I cannot change it's FormStyle directly. Therefore I want to make the TASKBAR to go to back, or to make it's FormStyle fsNormal. OK, if you still don't get it, then here's an example: I start Notepad and I maximize it. But it's not fullscreen, because Notepad is not made to act like that, and because of that the Taskbar is still visible (Always On Top turned ON). Now I DON'T want this, I want the Notepad to be the only visible thing on my screen! I hope it's clear now. The only thing I can do is to get the handle of the Taskbar, but I don't know how to use that handle to send the Taskbar to BACK or to make it's FormStyle fsNormal. The solution is probably, as George already said, in the SHAppBarMessage procedure, but I don't know how to use that procedure. So, any solutions? --- New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz
Re: [DUG]: Change the settings of the Taskbar
Quoting gajo [EMAIL PROTECTED]: OK OK, let me explain it to you again! The program that starts is NOT writen by me, so I cannot change it's FormStyle directly. Therefore I want to make the TASKBAR to go to back, or to make it's FormStyle fsNormal. OK, if you still don't get it, then here's an example: I start Notepad and I maximize it. But it's not fullscreen, because Notepad is not made to act like that, and because of that the Taskbar is still visible (Always On Top turned ON). Now I DON'T want this, I want the Notepad to be the only visible thing on my screen! I hope it's clear now. The only thing I can do is to get the handle of the Taskbar, but I don't know how to use that handle to send the Taskbar to BACK or to make it's FormStyle fsNormal. The solution is probably, as George already said, in the SHAppBarMessage procedure, but I don't know how to use that procedure. So, any solutions? Have a program send the message ABN_FULLSCREENAPP setting the lparam to TRUE when the application goes to fullscreen and send it again with lparam set to FALSE to restore the taskbar. This will also hide/unhide any other appbars that are open on the desktop. For more info look up ABN_FULLSCREENAPP in the Win32 SDK help file --- New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz --- New Zealand Delphi Users group - Delphi List - [EMAIL PROTECTED] Website: http://www.delphi.org.nz