Join The Works program to have access to the most current content, and to be able to ask questions and get answers from Revelation staff and the Revelation community

At 09 JUL 2005 11:27:52PM Tony Lillyman wrote:

Hi

I'm trying to create a "Taskbar"-like Control using a TABCONTROL, with "buttons" instead of "Tabs" on a MDIFrame (Parent) window which:

- updates/displays the "titles" of active MDI child windows

- provides a quick way for users to access those windows (by clicking the taskbar button)

- updates when windows are closed.

When windows are opened their details (Name and Title) are added to the "Taskbar" and when the Parent gets focus the taskbar "updates"

by re-checking the active windows and removing any missing ones.

I found this was possible (after some testing) by setting the TEXT property (@fm delimited) - wish it was documented somewhere in the HELP!)

My problem is I want to set the "Selected" button on my taskbar to

match the window that has focus - and such as when the new windows are opened.

I've tried setting VALUE, INVALUE, SELPOS, and VPOSITION to the "POS" of the button in the "TEXT" Array - no luck.

Anybody got any bright ideas ?

Many thanks

Tony


At 10 JUL 2005 01:21AM Tony Lillyman wrote:

An update.

Setting the VALUE property works, but…

I've found that I need to create the initial Tabcontrol with

a larger number of "Text" Entries at Dev Time in order for the

VALUE setting to work.

Eg If I want to set the TEXT Property with 3 values (representing the

3 Open Windows, but I created the Tabcontrol via Form Designer with ONLY 2 entries I cannot get the

Set_Property(WindowID,'VALUE',3) to be effective. !!

Is there are way to set the "Max Depth" of the Tab Control to

match the Number of TEXT Entries "on the fly" ???

One would expect with something like LIMIT property ???

Thanks

Any assistance appreciated.

Tony

expect up to


At 12 JUL 2005 02:09AM Tony Lillyman wrote:

I was hoping I'd get a response from someone ?

Anyone …?


At 12 JUL 2005 03:15AM [email protected] wrote:

Tony,

I suspect that there is currently no mechanism to alter existing tab controls so that their individual VALUE properties are amended. I also suspect that this will be fixed in a future release of OI (perhaps a SELPOS property to select a tab by position…)

In the meantime however, I think you have 2 options:

1) Destroy and recreate the control at runtime to add in the new tabs and values.

2) Use the Windows API via a TCM_SETCURSEL SendMessage call to set the selected tab (see here for more information)

[email protected]

The Sprezzatura Group Web Site

World Leaders in all things RevSoft


At 12 JUL 2005 03:27AM Tony Lillyman wrote:

Thanks Sprezz

It's not a critical issue at the moment.

I've just created to control via FormDes with 10 positions

and could increase if I found it necessary.

BTW. How would I create the control - I can't find any

documentation on the structure of the control?

I'll check out the link re Send_Message when I get a chance.

As the client said today having 10 windows open is more than

enough! So we'll leave it to REVSOFT to fix.

Maybe they could also include an option to "unselect" the

buttons - a la Windows Taskbar - so that we could then

minimise the associated window.

Anyway, I think the TabControl is one BIG leap forward.

and certainly made my app look really slick at my demo today!.


At 13 JUL 2005 12:22AM Sandra D'Angelo wrote:

We use the destroy and create to hide specific tabs on the control. Same logic can be used to add tabs. The example below adds a 5th tab with the label Test and tab value of 5.

struct=get_property(CtrlName,'ORIG_STRUCT')

notabs=struct

struct=insert(struct,1,23,5,5) ;*tab value

struct=insert(struct,1,32,5,'Test') ;*tab description

notabs += 1

struct=nottabs ;*tab count

Utility("DESTROY", CtrlName)

Utility("CREATE", Struct)


At 13 JUL 2005 01:06AM [email protected]'s Don Bakke wrote:

Hopefully Revelation will fix this pretty quickly. Outside of the VALUE property not working (both Get and Set), it is quite easy to add remove tabs/buttons with the TEXT property. Pretty cool.

The main problem with the Destroy/Create approach is the licensing policy within runtime applications. This is one of the reasons we use OLE controls, including our own tab control. In fact, Tony, we are doing exactly what you are doing with one of our utilities (although we are using the tab metaphore rather than the button). Since the OLE control internally allows us to add, remove, disable, and hide individual tabs we don't have to worry about licensing restrictions.

[email protected]

SRP Computer Solutions, Inc.


At 13 JUL 2005 10:56PM Tony Lillyman wrote:

Thanks Sandra

I knew it had to be possible.

Can't understand why REVSOFT didn't make it modifiable from the "get go" and avoid the Licencing Issues Don mentioned.

Hopefully they will in the next release.

Tony

View this thread on the Works forum...

  • third_party_content/community/commentary/forums_works/2e9ee8987ac3afd68525703a001307fe.txt
  • Last modified: 2023/12/30 11:57
  • by 127.0.0.1