in reply to Problem with Tk::JComboBox

If I understand your question, then would this help?
#!/usr/bin/perl use strict; use warnings; use Tk; use Tk::JComboBox; use File::Glob (); my $wMain = MainWindow->new; my $cboFile = $wMain->JComboBox( )->pack(-padx => 30, -pady => 30); foreach $_ (glob('*')) { $cboFile->addItem($_); } MainLoop;

Replies are listed 'Best First'.
Re^2: Problem with Tk::JComboBox
by davies (Monsignor) on Jan 31, 2010 at 18:45 UTC
    I think it's pointing me in the right direction. It doesn't do what I want - display the listbox part of the combobox - but it misbehaves on my system in a different way from my code. The listbox (when first shown) appears only where it is longer than the mainwindow. After that, it's fine. This leads me to the conclusion that JComboBox is using a geometry manager that doesn't like the things I am doing. I've tried a few things that haven't worked, but I'm going down this route first. I'll try to see what's happening in the source. However, I looked at the node zentara pointed me at and didn't really understand the issues, so I may be biting off more than I can chew. But I have at least got something I can try, so thank you both for that. I'll report back if I get anywhere.

    Regards,

    John Davies
      Well, I haven't got exactly what I want, but I've got something good enough for my purposes. By setting the entrywidth property, the width of the popup will become the same as the entrybox. This means that I get a reasonable display, so I'm not looking any further (at least right now!) for a way to get the display right when the width is set automatically.

      Thanks to all and regards,

      John Davies