Page 1 of 2

ShowInTaskbar

Posted: Sat Jan 13, 2007 3:10 pm
by seesharp
Hi

I know, that the property 'ShowInTaskbar' shouldn't be used with f_in_box__form. However, I tried to use a work-around using GetWindowLong and SetWindowLong but I cannot get it to work properly. I.e. as soon as I maximize / minimize my form, it reappears in the taskbar.

Could you provide some hints on how to avoid that ?


Alex

Posted: Sat Jan 13, 2007 4:21 pm
by Softanics
Thank you for your question.

Another words, this workaround works well, but after minimizing a form appears again in taskbar?... How do you minimize the form?

Posted: Sat Jan 13, 2007 4:58 pm
by seesharp
By code


Alex

Posted: Sat Jan 13, 2007 5:31 pm
by seesharp
Hi,

I simply need to be able, to get the same possibilities we had with FlashPlayerControl.
There we could set 'showInTaskbar' within the constructor and add a System menu by win API methods.

Now every transparent form shows in taskbar. But we have many applications which shouldn't show up there as they are controlled wvia a tray icon.

I really need to be able to switch that off and keep it off no matter if the form is minimized or whatever.

Kind regards

Alex (the many asking)

Posted: Sun Jan 14, 2007 11:16 am
by Softanics
seesharp wrote:There we could set 'showInTaskbar' within the constructor and add a System menu by win API methods.

Now every transparent form shows in taskbar. But we have many applications which shouldn't show up there as they are controlled wvia a tray icon.


If I set ShowInTaskbar to false in constructor, a form doesn't show in taskbar. Even if I minimize it using

Code: Select all

WindowState = FormWindowState.Minimized;

it still doesn't show in taskbar.

ShowInTaskbar recreates a window handle, that's why you should set your personal access key after using this property.

Posted: Sun Jan 14, 2007 2:07 pm
by Softanics
Softanics wrote:ShowInTaskbar recreates a window handle, that's why you should set your personal access key after using this property.


The latest update, 3.0.8, solves this problem. Now you set a private context only once, then you can use ShowInTaskbar, or any others things that recreate a window handle, without additional setting of the private context. Please check it.

Thank you.

Posted: Sun Jan 14, 2007 8:20 pm
by seesharp
Hi

sorry for bothering you again,
first of all thank you for the update, the license key issue works fine now. However, I still have the problem that, as soon as I open my transparent form with window state 'maximized' it appears in the task bar although I've set ShowInTaskbar = false.

This problem didn't occur in FlashPlayerControl.

Kind regards

Alex

Posted: Mon Jan 15, 2007 5:37 am
by Softanics
seesharp wrote:However, I still have the problem that, as soon as I open my transparent form with window state 'maximized' it appears in the task bar although I've set ShowInTaskbar = false.


This is a small sample which I used for test:
http://f-in-box.com/TEMP/588C7924-0597- ... ucency.zip

Right click to the form, then click to Maximize. There is no entry on taskbar. Please check it. If you see the same, could you please send me your code for testing to support (at) f-in-box.com

Thank you very much for your tests!

Posted: Mon Jan 15, 2007 8:49 am
by seesharp
Hi,

thanks for the example,

I've tested on two different Win XP machines and get the following result:
9 out of 10 times, it does ! appear in the taskbar in fact.
Would be fine if someone else could confirm that result.

Additionally, as soon as it has been maximized, it cannot be hidden from taskbar using ShowInTaskabar = false;

Best Regards

Alex

Posted: Mon Jan 15, 2007 9:15 am
by Softanics
seesharp wrote:I've tested on two different Win XP machines and get the following result:
9 out of 10 times, it does ! appear in the taskbar in fact.


i.e. sometimes you see it in the taskbar, sometimes - you don't see it in the taskbar?... :o

Posted: Mon Jan 15, 2007 9:23 am
by seesharp
In fact, I cannot exactly give the ratio, the overhelming time i see it in the taskbar, once I didn't
I've tested with just restarting - maximizing many times.

Alex

Posted: Mon Jan 15, 2007 10:08 am
by Softanics
OK.
I made new sample, hope it works well:
http://f-in-box.com/TEMP/129042DB-8BFD- ... ucency.zip
Please check it.

Posted: Mon Jan 15, 2007 10:25 am
by seesharp
Thanks,

yes like this it really works. You are definitely quite competent with this Win API calls.
Now my question is, if I shall implement it according to your example or if you include this 'work-around' as an override of the ShowInTaskbar property to your f_in_box__lib.dll and we don't have to think about the background tasks.

Very kind regards

Alex

Posted: Mon Jan 15, 2007 2:58 pm
by Softanics
seesharp wrote:Now my question is, if I shall implement it according to your example or if you include this 'work-around' as an override of the ShowInTaskbar property to your f_in_box__lib.dll and we don't have to think about the background tasks.


ShowInTaskBar isn't a virtual property, so I can override it in f_in_box__form, but in some cases it will not work as expected. For example, if we have an array of System.Windows.Forms.Form, add a f_in_box__form instance and then call ShowInTaskBar for each item. In this case, System.Windows.Forms.Form.ShowInTaskBar will be called for the f_in_box__form instance, not f_in_box__form.ShowInTaskBar.

On the other hand, if I implement f_in_box__form.ShowInTaskBar, it would be more useful then if I don't implement it at all :)

Posted: Mon Jan 15, 2007 5:10 pm
by Softanics
I've added two properties: ShowInTaskbar and ShowSystemMenu.