Формирование частей строки в ячейке списка таблиц TCL / Tk - PullRequest
0 голосов
/ 28 сентября 2018

Интересно, можно ли отформатировать часть текстовой строки при использовании (пример)

 .tbl   cellconfigure $row,$col -text "ThisBoldArial AndThisAsSubscript"

команды?

Я знаю, например, о параметре -font, ноэто устанавливает шрифт всей ячейки.Можно ли как-то отформатировать разные части строки по-разному?

1 Ответ

0 голосов
/ 28 сентября 2018

Я не думаю, что вы можете сделать это легко .Глядя на документацию , я не вижу способа указать диапазоны индексов текстового содержимого ячеек (которые вам понадобятся, чтобы применить к ним вариант рендеринга).Я думаю, вы могли бы обойти это, вставив текстовый виджет в качестве окна визуализации ячейки с опцией -window cell;использование текстового (или ctext) виджета для этой цели упоминается при передаче в документации -windowupdate опции ячейки , поэтому должна быть возможность подделать его таким образом, но вам нужно будет понятьподробности о том, как это сделать правильно.

В этом примере показано, как выполнить вставку окна, хотя с frame или button вместо text.Вам нужно будет поработать, чтобы получить текстовый виджет (в основном, сделать его без полей, только для чтения и вообще не прокручивать).

proc createButton {tbl row col w} {
    set key [$tbl getkeys $row]
    button $w -image openImg -highlightthickness 0 -takefocus 0 \
        -command [list viewFile $tbl $key]
}

$tbl cellconfigure $row,$column -window createButton

Естественно, вы захотите проделать дополнительную работу, чтобы встроенный текстовый виджет отображался так, как вы хотите.Это потенциально свой особый набор сложности ...

...