in reply to Re: Tkx Table - Read cell background
in thread Tkx Table - Read cell background

I still can not use the "tag cget" to get the background color assigned to individual cells.

use strict; use warnings; use Tkx; Tkx::package_require("Tktable"); my %hash =(); my $table; my $mw = Tkx::widget->new("."); %hash = ( # data to display '0,0' => 'Goodby', '1,1' => 'cruel', '2,2' => 'world', ); $table = $mw->new_table ( -rows => 3, -cols => 3, -bg => "white", -width => 6, -height => 6, -cache => 1, -variable => \%hash, ); $table->g_pack(-fill => 'both', -expand => 1); ################################################ # set data and assign background color to cells ################################################ $table->tag("celltag","g",("1,1")); $table->tag("celltag","y",("2,2")); $table->tag("configure","g",-bg=>"green",-fg=>"red"); $table->tag("configure","y",-bg=>"yellow",-fg=>"red"); my $info; $info = $table->tag("cget", "g", "-background", -row? -col?); print "info=$info\n"; Tkx::MainLoop();

Replies are listed 'Best First'.
Re^3: Tkx Table - Read cell background
by Anonymous Monk on Jul 05, 2016 at 21:54 UTC

    Why do you need to the background, since you set the background?

    This is as close as I'm able to get  $table->tag('cget','active','-bg'), "\n";

    I thought maybe this would work as well, it does for "configure" but for cget it always returns window not found  $table->window( 'cget', "$row,$col" , "-background" )

    Seems like a bug in ActiveTcl 8.6b1.2 (current is 8.6.4.1/

    Could tag every cell with row/col but that seems like a dumb workaround, but it would probably work

      Thanks alot for helping. I have been trying very hard and could not make it work and now I know why. The reason I want to read the Table cell background is when saving off the table to an excel for documentation, the excel will have the same color layout as in the table. For a workaround, I tagged every cell in a seperate tag array. Thanks again.