如何接受tcl位图列表
有没有办法获取Tcl发行版默认提供的位图图像列表 我找到了一个与此问题相关的wiki页面如何接受tcl位图列表,tcl,Tcl,有没有办法获取Tcl发行版默认提供的位图图像列表 我找到了一个与此问题相关的wiki页面 但是它使用已经准备好的位图列表从您引用的wiki页面开始,相关命令是 其中.c是一个画布小部件 canvas手册页为create bitmap子命令的-bitmap选项显示: 指定要在项目的正常、活动和禁用状态下显示的位图。位图可以有任何被接受的形式 Tk_GetBitmap手册页 我还看到了显示默认位图是如何实例化的 所有这些都无助于推断如何以编程方式列出内置位图。位图图像(与位图相反,如果可以,应避免使
但是它使用已经准备好的位图列表从您引用的wiki页面开始,相关命令是 其中
.c
是一个画布小部件
canvas
手册页为create bitmap
子命令的-bitmap
选项显示:
指定要在项目的正常、活动和禁用状态下显示的位图。位图可以有任何被接受的形式
Tk_GetBitmap手册页
我还看到了显示默认位图是如何实例化的
所有这些都无助于推断如何以编程方式列出内置位图。位图图像(与位图相反,如果可以,应避免使用位图)是使用image create Bitmap
创建的图像,可以在image type
的帮助下通过过滤图像名称来列出:
proc listBitmapImages {} {
set bitmaps {}
foreach im [image names] {
if {[image type $im] eq "bitmap"} {
lappend bitmaps $im
}
}
return $bitmaps
}
请注意,默认情况下,Tk不会创建位图图像。(有一些默认位图,如Tk_GetBitmap
手册页面上所列,但它们不可发现,如果可能的话,应该在新代码中避免使用。它们的可移植性在一开始也是非常不可靠的,您可能会选择使用它们来绘制画布项目的主要内容是)但我非常喜欢位图图像,因为它们相对容易作为文本打包到脚本中。转换为XBM格式,您就有了适合使用的文本数据。(您甚至可以使用合适的遮罩XBM使其成为双色图像。)