Hi
Use this code to prevent resizing
my($top) = MainWindow->new();
$top->title("Example");
$top->resizable(0,0);
| [reply] [Watch: Dir/Any] [d/l] |
$mw->overrideredirect(1);
# set the override-redirect flag
# removes all window manager controls
$mw->packPropagate(0);
# prevent the window being resized
I'm not really a human, but I play one on earth.
flash japh
| [reply] [Watch: Dir/Any] [d/l] |
In the general case, an application does not have the
ability to do these things, because these things are
controlled by the window manager. It may be possible
in certain cases, i.e., with window managers that provide
a mechanism for it, but if so it wouldn't be the least
bit portable: as soon as somebody runs the app under a
different window manager, it won't work. Probably the
most common way to accomplish these things is to eschew
the standard window widget altogether and draw your own
shape; media players such as yamp and xmms tend to do
this. However, this too is somewhat unportable, and I
don't think Tk provides the ability to do it. (Tk is,
after all, a widget set, and applications that do this
don't use a standard widget set; they have to draw just
about everything themselves, I think; at least, that's
the approach most of them seem to take.) And like I said,
it's unportable; xmms had to have a new frontend created
to run under Ion. (Fortunately, xmms has the functional
backend cleanly separated from the graphical frontend so
that this was easy to do; it also has a frontend for
Emacs and a text-based one for consoles and terminals.) | [reply] [Watch: Dir/Any] |
I want to disable the resizing of MainWindow
That's really really user hostile. You should create a layout that adapts to the size of the window.
Please explain why you think you know more than your users about how much screen estate they want to give to your top-level.
| [reply] [Watch: Dir/Any] |
if you're in Windows you may want toolbox attribute. Look:
use Tk;
$mw=tkinit;
$tl=$mw->Toplevel;
print hex($tl->id);
$tl->Button(-text=>'Ok')->pack;
#$tl->attributes(-toolwindow=>1);
$mw->after(1000,sub {$tl->attributes(-toolwindow=>1)});
MainLoop;
Best regards,
Courage, the Cowardly Dog
| [reply] [Watch: Dir/Any] [d/l] |
If you have not already found it I suggest that you get a copy of Mastering Perl/Tk by Lidie and Walsh (O'Reilly). | [reply] [Watch: Dir/Any] |