我在理解如何让标签在我的特定应用程序上工作有些困难,我有一个名为“dwgoutputbox”的文本小部件,它在读取CSV文件后显示许多字段
在本例中,dwgoutputbox
文本小部件显示许多字符串变量descDwg1,descDwg2,descDwg3
,它们是第一列中的项目,后面是其他变量的“issue”编号
我试着让第一列中的项目突出显示,这样最终我可以让它们可以单击,因为它们将链接到文件。在
由于第一列中的项目会发生变化,这取决于CSV搜索(但仍采用以下通用格式),我不确定如何使tag_config工作
self.outputQty.insert(INSERT,descQty)
self.outputDesc.insert(INSERT,descPN, END," ", END, descInfo)
self.dwgoutputbox.insert(INSERT, descDwg1, END, " ", END, " Issue: ",END,descIss1,END, "\n")
self.dwgoutputbox.insert(INSERT, descDwg2, END, " ", END, " Issue: ",END,descIss2,END, "\n")
self.dwgoutputbox.insert(INSERT, descDwg3, END, " ", END, " Issue: ",END,descIss3,END, "\n")
format_link()
def format_link(dwgoutputbox,tag,apply_tag):
self.dwgoutputbox.tag_config(tagName="19",foreground="blue",underline=1)
dwgoutputbox.tag_bind(tag,"<Button-1>",apply_tag)
好的,成功地让它如预期的那样工作,主要是由于布莱恩·奥克利的帮助和耐心-非常感谢你的感谢。在
^{pr2}$我有一半的问题是,对于更高级的东西,似乎没有太多/任何好的“基本”解释,这给一个学习python一个月的新手提出了一个很好的挑战。尽管如此:)
代码中至少有两个问题。在
首先,您错误地使用了insert语句。这是您的代码:
insert
命令的第一个参数必须是索引,下一个参数是文本。之后的任何参数都作为标记和文本交替出现。在您的例子中,文本是descPN
的值,然后是一个名为“end”的标记(即END
常量的值)、一个空格、“end”m的标记,然后是文本descInfo
。在其次,您永远不会配置标记“end”。但是,您确实配置了一个名为
19
的标记,但是您没有将该标记应用于任何文本。您需要将标记与insert
语句一起使用,或者与tag_add
语句一起使用。在要在文本小部件中使用标记突出显示文本,您需要做两件事:必须将标记配置为具有所需的任何属性(颜色、字体等),并且必须将该标记添加到文本范围中。在
您可以使用
^{pr2}$tag_configure
配置标记。例如,要让一个名为“red”的标记为文本提供红色背景,您可以执行以下操作:接下来,需要将该标记应用于文本范围。有两种方法。首先,可以在插入文本时将标记应用于文本,方法是将标记作为参数包含到
insert
命令中:第二种方法是将标记应用于范围。例如,要使第二行变为红色,可以这样做:
相关问题 更多 >
编程相关推荐