Michael,
Your snippet helped me get to the solution. Still don't know why this works
though, as you will see.
So I took your .configure statement and tried several variations in the
wording (one can guess at this pretty well after a while, as the
documentation on such things is sparse) of the command in the argument list
until I got it right. The combobox widget code now looks like this:
self.comboServerMySQL = Pmw.ComboBox(
self.frameMySQL_30_00,
scrolledlist_items=self.servers,
listheight=100,
entry_width=20, # this line not needed
scrolledlist_hull_width=8, # without this statement, drop-down
menu is a vertical bar;
# also, if value < 8, no
width to drop down menu, even if
# the entry_width is made
smaller.
)
self.comboServerMySQL.grid(
row=3,
column=1,
sticky=W,
pady=2,
)
So without "scrolledlist_hull_width", the drop-down menu just turns into a
useless vertical line when displayed from a Linux box to a Windows box using
an X server. Not good.
Also note, for some weird reason, if scrolledlist_hull_width = 7 or less,
the drop down menu reverts back to a vertical line, even though
"entry_width" is made as small as 8. IOW, "entry_width" does not seem to
affect the fact that "scrolledlist_hull_width" must be 8 or larger.
Why must the value of "scrolledlist_hull_width" be 8 or more???? I have no
idea!!
But at least it's working. Proof that the planets do align occasionally.
Users of my code will be happy, I reckon! :)
I would think the mailing list might like to know all this stuff.
Thanks for the help!
Daniel B.
On Thu, Feb 10, 2011 at 12:48 PM, Michael Lange <klappnase@...> wrote:
> Hi,
>
> Thus spoketh Friedrich Romstedt <friedrichromstedt@...>
> unto us on Thu, 10 Feb 2011 20:09:34 +0100:
>
> > 2011/2/10 Daniel Barnette <dwbarne@...>:
> > > However, when I run the app on a Linux box and try to display it back
> > > to my Windows box using an X server (like freeXer or XMing), the
> > > combobox widget's drop-down menu is squashed all to the left, leaving
> > > just a small vertical bar which otherwise should be a wide drop-down
> > > menu. Can't scroll it or select anything in it -- it's not wide
> > > enough to see anything in it.
>
> Maybe explicitely defining the list's width as in this example might help
> (though I cannot test it here):
>
> import Pmw
> root=Pmw.initialise()
> cb = Pmw.ComboBox()
> cb.pack()
> cb.update_idletasks()
>
> cb.component('scrolledlist').configure(hull_width=cb.component('entryfield').winfo_reqwidth())
> root.mainloop()
>
> Regards
>
> Michael
>
>
> .-.. .. ...- . .-.. --- -. --. .- -. -.. .--. .-. --- ... .--. . .-.
>
> "Logic and practical information do not seem to apply here."
> "You admit that?"
> "To deny the facts would be illogical, Doctor"
> -- Spock and McCoy, "A Piece of the Action", stardate
> unknown
>
>
> ------------------------------------------------------------------------------
> The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE:
> Pinpoint memory and threading errors before they happen.
> Find and fix more than 250 security defects in the development cycle.
> Locate bottlenecks in serial and parallel code that limit performance.
> http://p.sf.net/sfu/intel-dev2devfeb
> _______________________________________________
> Pmw-general mailing list
> Pmw-general@...
> https://lists.sourceforge.net/lists/listinfo/pmw-general
>
|