# Hi all, # Q1........ how do I colour the separator in the Menubutton in the script below # Q2........ and how do I colour the system menu icon's dropdown
use diagnostics; use strict; use Tk; my $colour = "white"; my $main = MainWindow->new; my $label = $main->Label(-text => 'Hello, world!')->pack; my $button1 = $main->Menubutton(-text => "More...", -underline => 0, +-tearoff => 0, -activebackground => $colour, -relief=> "raised",)->pa +ck; my $entry1 = $button1->command(-label => 'Quit1',-command => [$main => + 'destroy'], ); my $entry2 = $button1->separator(); # colour it ?!? -bg => +$colour, does not work ???? my $entry3 = $button1->command(-label => 'Quit2',-command => [$main => + 'destroy'], ); # Q3........... would also like to know if it is possible to get the +proper names (var names maybe that I used) for the $widgets so I can +read them better... # as of "$main" rather than "MainWindow=HASH(0x1828c84)" # or "$label" rather than "Tk::Label=HASH(0x1c02eb8)" # from this part of the script: ############ to catch(recolour) any non white(coloured) areas ######## +######################## print "<<<<<<<<<<<<<<<<<<<<<<< Colouring widgets >>>>>>>>>>>>>>>>>>>>> +>>>>>>\n"; change_colors2( $main, $colour, # $colourt, $foreground ); sub change_colors2{ my ( $widget, $color, ) = @_; print "Widget is $widget, it's background color is $color.\n"; # The above is the part where I'm trying to get the proper names (var +names maybe that I used) for the $widget so I can read them better. # as of "MainWindow=$main" in "Widget is MainWindow=HASH(0x1828c84), i +t's background color is white." # or "Tk::Label=$label" rather than "Tk::Label=HASH(0x1c02eb8)" $widget->configure( -bg => $color,); # $main->update; if ( my @children = $widget->children ) { change_colors2( $_, $color,) for @children; print "Child widget is $_, it's background color is $color.\n" for @ch +ildren; # try to get the proper names (var names maybe that I used) for the $w +idget/$_ so I can read them better ?!? # or give names ??? $main->update; } } ###################################################################### +################ # Q4......... also, who would I use the Tk::Label=HASH(0x1c02eb8) entr +ies, in a configure, as of: # Tk::Label=HASH(0x1c03614)->configure(-fg => "gray",); # as apposed to: $label->configure(-fg => "gray",); $main->update; MainLoop;
# Extras I'm also after: # Q5........ how would I go about getting sound from a microphone and send it to a speaker # Q6........ and how do I update/upgrade Tk # Am on Windows XP Home # With ActiveState ActivePerl 5.8 # Tk version 800.024 # Also use EnginSite Perl Editor LITE If it's not broken, why not tinker with it some more :)

2006-01-12 Retitled by g0n, as per Monastery guidelines
Original title: 'How do I change the colour of a separator'


In reply to How do I change the colour of a Tk separator by Anonymous Monk

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • 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:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.