Re: Colors and other questions

[email protected] (Michael Carman)
Newsgroups perl.tcltk
Message-ID <[email protected]>
On 3/8/2010 7:28 PM, Swingle David-QWHM86 wrote:
> So, what is the difference between widgets that have "ttk__" in
> their name and those that don't?

They're completely different widgets which use (or at least closely
approximate) the theming of OS-native widgets. The first "t" stands for
"tile" which is the extension that introduced them. As of Tk 8.5 the
tile extension is integrated into the core.

> If I want to find help on these widgets, where do I look?

Under the "Themed Widgets" section of the Tk documentation:

http://docs.activestate.com/activetcl/8.5/tcl/tk_contents.htm

> Why is there a difference and what are the advantages and
> disadvantages to one over the other?

The primary advantage is that it allows you to create Tk apps that look
like native applications. Additionally, there are some widgets (like
comboboxes) that are only available in ttk. One disadvantage is that
they generally aren't as flexible if you want to set specific
colors/fonts/etc.

> If tkx is supposed to be a thin wrapper over Tcl/Tk, does that mean
> there are different types of entry/button/radio widgets in Tcl/Tk?

Yup.

> Any answers to the other questions from the previous post (#2, 3, 4,
> 7, 8, 9, 10)?

For 2-4 I don't know offhand. Check the Tk documentation linked above.

#7 (fill when resizing) is probably the result of not using -sticky
(when using the grid geometry manager) or -expand and -fill (when using
pack). Getting things to resize the way your used to applications
behaving takes practice.

For #8 (attaching scollbars to a listbox) I recommend using
Tkx::Scrolled. It's a mega-widget (so "yes" to #9) to make it easy to
add scrollbars to anything scrollable. Making a megawidget isn't all
that hard. Tkx includes LabelFrame as a simple demo. I've made a few and
put them on CPAN. (Tkx::Scrolled is on of them.)

For #10 (scrollbars after resizing) it sounds like programmatic resizing
isn't triggering the events to update scrollbars. You may need to do it
explicitly. I'd have to dig through the code to be sure.

-mjc
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.