Изменение цвета фона записи tk в режиме только для чтения

Привет, у меня есть требование, когда мне нужно создать таблицу, а ячейки будут доступны только для чтения. Но наряду с режимом только для чтения ячейки должны иметь цветной фон. Теперь с заданными параметрами я попытался сделать что-то вроде ниже, но безуспешно. Поскольку я изучаю проектирование графического интерфейса, я не уверен, что с помощью заданных команд можно получить цветной фон в режиме только для чтения:

package require Tk
set val1 "12";
set cols 5;
set rows 5;
set cell 0;

set mytable [table .tb -cols $cols -rows $rows]; 
set myentry [entry .e1 -textvariable val1 -state readonly -background red];
#set myentry [entry .e1 -textvariable val1 -background red];
set myentry1 [entry .e2 -textvariable val1 -state readonly -background yellow];
#set myentry1 [entry .e2 -textvariable val1 -background yellow];

$mytable window configure 0,1 -window $myentry;
$mytable window configure 3,0 -window $myentry1;

pack $mytable -fill both -expand true;

Поэтому, если я использую состояние только для чтения, тогда ячейки становятся серыми, а цвет фона скрывается или что-то в этом роде, но если я удаляю состояние только для чтения, цвет фона отображается, но ячейки доступны для редактирования.

Мне интересно, есть ли способ получить желаемый цвет фона ячейки вместе с состоянием только для чтения. Я мало что знаю, но подумал, что если я смогу каким-то образом связать событие кнопки-1, то, если пользователь нажмет, ячейка ничего не сделает.

На этой вики-странице в разделе "Состояния виджетов" скажем, что в отключенном состоянии выбор не разрешен, но в режиме только для чтения выбор разрешен и используется другой фон. Но там не сказано, что если используется другой фон, то как его установить??? или это просто означает, что используется другой оттенок серого...

Не уверен, что моя мысль верна, поэтому, пожалуйста, какие-либо комментарии ???


person Puneet Mittal    schedule 10.03.2015    source источник
comment
Я собрал много информации здесь: изменение цветов виджета, но я не добавлял информацию о более старых виджеты. Я не знаю, позволит ли ваша версия использовать виджеты ttk.   -  person Brad Lanam    schedule 11.03.2015


Ответы (1)


На странице руководства для entry указано, что опция -readonlybackground изменит цвет фона для виджетов входа в режиме только для чтения.

person Brad Lanam    schedule 10.03.2015