Position of a tab in a tab control.
Peter M. Brigham, MD
pmbrig at gmail.com
Fri Apr 20 11:14:11 EDT 2012
If using Mark's custom tab control doesn't work for you, here's a kludgy work-around. It requires a hidden field "hiddenTestFld" with margins set to 6.
on positionControl btnName, tabNbr
-- btnName is the name of your tab button
put the formattedwidth of btn btnName into bWidth
put the formattedheight of btn btnName into bHeight
put item 1 of the loc of btn btnName into bCenter
put bWidth div 2 into halfWidth
put bCenter - halfWidth into bLeft
put bCenter + halfWidth into bRight
put the top of btn btnName into bTop
set the textfont of fld "hiddenTestFld" to the textfont of btn btnName
set the textsize of fld "hiddenTestFld" to the textsize of btn btnName
put 0 into divisions
repeat with n = 1 to the number of lines of btn btnName
put line n of btn btnName into tabName
put tabName into fld "hiddenTestFld"
put (the formattedwidth of fld "hiddenTestFld") into tWidth
put (item n of divisions) + tWidth into item n+1 of divisions
end repeat
put (item tabNbr of divisions) + bLeft into tabLeft
put (item tabNbr+1 of divisions) + bLeft into tabRight
put tabLeft + ((tabRight - tabLeft) div 2) into tabCenter
set the loc of btn "floatingControl" to tabCenter,bHeight+24
end positionControl
The result in placing the control (in this case btn "floatingControl") below the correct tab is not quite exact, for reasons I haven't gotten to the bottom of, but you could fiddle with it a bit.
HTH,
-- Peter
Peter M. Brigham
pmbrig at gmail.com
http://home.comcast.net/~pmbrig
On Apr 20, 2012, at 5:35 AM, Paul Hibbert wrote:
> Pete,
>
> I may be wrong, but I don't think there's a way to control the differences between the two platforms without rolling your own tab control.
>
> However, Mark Schonewille has done much of the work and made his custom tab control available through RevOnline, just search for "custom tab" and you should find it, or the web hosted version is here…
>
> http://revonline2.runrev.com/stack/258/Custom-Tab-Button
>
> You should be able to adapt it (or copy the principles) to suit your needs.
>
> Paul
>
> On 20 Apr 2012, at 04:19, Peter Haworth wrote:
>
>> Is there a way to get hold of the coordinates of the label of the currently
>> selected tab of a tab control?
>>
>> I have a control that I want to position immediately below the label of the
>> current tab of a tab control. I tried doing this by trial and error,
>> adding a number of pixels to the left of the control to position it
>> correctly. This was all on a Mac and as soon as I tried it on a Windows
>> machine, the control is not positioned correctly, and I suspect it would be
>> affected by different screen resolutions also.
>>
>> Pete
>> lcSQL Software <http://www.lcsql.com>
>> _______________________________________________
>> use-livecode mailing list
>> use-livecode at lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
>> http://lists.runrev.com/mailman/listinfo/use-livecode
>
> _______________________________________________
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
More information about the use-livecode
mailing list