It sounds like you, as a beginner, my want to reconsider your design. The first thing I have to say, is why do you need the overlapping secondary sub-canvases? If you can make something on your sub-canvas, you can do the same thing on the underlying canvas. You can still put a background image on the main canvas, then instead of overlaying other canvases, why not create rectangular regions on the base canvas? In any event, look at this example:
#!/usr/bin/perl
use warnings;
use strict;
use Tk;
my $mw = new MainWindow;
my $main = $mw -> Scrolled("Canvas",-scrollbars=>'e')->
pack(-side =>'left', -fill => 'both', -expand => 1);
my $canvas = $main->Subwidget("canvas");
Tk::bind($canvas, '<MouseWheel>', [ sub {$canvas->yview('scroll',
-($_[1] / 120) * 3,'units')}, Ev('D')]);
my $see = "\nHaaa, See that and scroll!";
my $info = $main->createText(180, 15, -text => "$see",
-font => 'Arial 11 bold' , -fill => 'red');
$main->configure(-scrollregion => [0,0,2000 , 2000]);
my $canvas_cube = $main->Canvas(-width => 45, -height => 45,
-background => 'green');
my $canvasWindow = $main->createWindow(75,75, -window => $canvas_cube)
+;
Tk::bind( $canvas_cube, '<Enter>' => sub { print "Enter\n"; });
Tk::bind( $canvas_cube, '<Leave>' => sub { print "Leave\n"; });
Tk::bind( $canvas_cube, '<Button-1>' => sub { print "1\n"; });
$canvas->focus;
MainLoop;
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
Read Where should I post X? if you're not absolutely sure you're posting in the right place.
Please read these before you post! —
Posts may use any of the Perl Monks Approved HTML tags:
- a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
| |
For: |
|
Use: |
| & | | & |
| < | | < |
| > | | > |
| [ | | [ |
| ] | | ] |
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.