- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在尝试创建专栏并将图像添加到“浏览器列表”时遇到错误。命令行中的错误显示“无法在非报告模式下添加列”。
如何简单地将这个图标及其相应的名称(即“Google chrome”)添加到列表 ctrl 中?
images=['/Desktop/chromelogo.png', 'Desktop/firefoxlogo.png']
browserlist=wx.ListCtrl(panel, pos=(255, 100), size=(220, 100))
browserlist.InsertColumn(0, '')
self.il = wx.ImageList(40,40,True)
for i in images:
self.il.Add(wx.Bitmap(i))
我希望它看起来像下面窗口的左侧:
最佳答案
寻找ListCtrl
wxPython 演示中的示例(如果没有,请立即安装)。它在行文本前面添加了图标。为了能够添加列,您必须将样式设置为 wx.LC_REPORT
(编辑)
(在该模式下您将被限制为 16x16 图标)
(EDIT3,不是 true)。
EDIT2:添加完整示例(修改后的 wxPython 演示 ListCtrl 示例)
EDIT4:示例修改,删除列表解包。
import wx
test_list_data = {
1 : ("New", "Explanation text new"),
2 : ("Open", "Explanation text open"),
3 : ("Copy", "Explanation text copy"),
4 : ("Paste", "Explanation text paste")}
class TestListCtrlPanel(wx.Panel):
def __init__(self, *args, **kwds):
wx.Panel.__init__(self, *args, **kwds)
sizer = wx.BoxSizer(wx.VERTICAL)
BMP_SIZE = 24
tsize = (BMP_SIZE, BMP_SIZE)
self.il = wx.ImageList(BMP_SIZE, BMP_SIZE)
# bitmap generation, uses stock bitmaps included in wxPython
new_bmp = wx.ArtProvider.GetBitmap(wx.ART_NEW, wx.ART_TOOLBAR, tsize)
open_bmp = wx.ArtProvider.GetBitmap(wx.ART_FILE_OPEN, wx.ART_TOOLBAR, tsize)
copy_bmp = wx.ArtProvider.GetBitmap(wx.ART_COPY, wx.ART_TOOLBAR, tsize)
paste_bmp= wx.ArtProvider.GetBitmap(wx.ART_PASTE, wx.ART_TOOLBAR, tsize)
self.bmpdict = {1: new_bmp, 2: open_bmp, 3: copy_bmp, 4: paste_bmp}
# mapping wxImageList indices to keys in test_list_data
self.imglistdict = {}
for idx, bmp in self.bmpdict.iteritems():
self.imglistdict[idx] = self.il.Add(bmp)
self.listctl = wx.ListCtrl(self, -1,
style=wx.LC_REPORT
#| wx.BORDER_SUNKEN
| wx.BORDER_NONE
| wx.LC_EDIT_LABELS
| wx.LC_SORT_ASCENDING
#| wx.LC_NO_HEADER
#| wx.LC_VRULES
#| wx.LC_HRULES
#| wx.LC_SINGLE_SEL
)
self.listctl.SetImageList(self.il, wx.IMAGE_LIST_SMALL)
sizer.Add(self.listctl, 1, wx.EXPAND)
self.PopulateList()
self.SetSizer(sizer)
self.SetAutoLayout(True)
def PopulateList(self):
# header creation
info = wx.ListItem()
info.m_mask = wx.LIST_MASK_TEXT | wx.LIST_MASK_IMAGE | wx.LIST_MASK_FORMAT
info.m_image = -1
info.m_format = 0
info.m_text = "Artist"
self.listctl.InsertColumnInfo(0, info)
info.m_text = "Title"
self.listctl.InsertColumnInfo(1, info)
# ListCtrl data generation
items = test_list_data.items()
for key, data in items:
imglist_idx = self.imglistdict[key]
index = self.listctl.InsertImageStringItem(key, data[0], imglist_idx)
self.listctl.SetStringItem(index, 1, data[1])
self.listctl.SetItemData(index, key)
class listctltest(wx.Frame):
def __init__(self, *args, **kwds):
wx.Frame.__init__(self, *args, **kwds)
self.pnl = TestListCtrlPanel(self, -1)
if __name__ == '__main__':
app = wx.App(redirect=False)
frm = listctltest(None, -1, 'title')
frm.Show()
app.MainLoop()
您还可以查看UltimateListCtrl
在演示中如果这有你想要的东西。
wx.DataViewListCtrl
( wxPython
>= 2.9 ) 是最先进的内置函数,并且还可以将图标添加到列表中。
不包含在此列表中(因为我没有这方面的经验):ObjectListView
.
关于python - wxPython列表Ctrl : Add Column and Images,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29363743/
I have a question about adding files in git. I have found multiple stackoverflow questions about
我是 visual studio 的新手,来自 Delphi。 我有一个充满 .cs 文件的目录树(根是\Common)。 我还有一个充满应用程序的目录树(根目录是\Applications) 最后,
这个问题在这里已经有了答案: Array's lookup time complexity vs. how it is stored (4 个答案) Time complexity for java
谁能告诉我这两者有什么区别: ALTER TABLE x1 ADD INDEX(a); ALTER TABLE x1 ADD INDEX(b); 和 ALTER TABLE x1 ADD INDEX(
为什么有时我们使用 getChildren() add() 而其他时候我们直接使用 add() es: https://docs.oracle.com/javafx/2/get_started/for
如何使用 bootstrap css 在输入下方添加跨度?我需要做这样的事情: 最佳答案 是这样的吗? http://jsfiddle.net/swm53ran/205/ 您可以使用纯 CSS 来实现
问题 np.add(X, 2*Y, out=X) 比 np.add(X, Y, out=X); np.add(X, Y, out=X).使用 np.add(X, Y, out=X); 是一种实际做法吗
当我跑 git add --intent-to-add .所有未跟踪的文件将其状态从“未跟踪的文件”( git status -s 显示 ?? )更改为“未暂存以进行提交的更改”( git statu
我不知道 .add 之间有什么区别和 .sink.add ? 例子: StreamController myStreamController = StreamController(); stream
getContentPane().add() 和 add() 的意思一样吗? public class TestFrame extends JFrame{ public TestFrame()
git add . 和 git add * 会完成完全相同的事情吗? 最佳答案 不,不会。 * 是一个 glob 模式,不会匹配以 开头的文件。 例如,假设这是当前目录,我有 2 个新文件要添加 fo
git的分支与合并的两种方法 git add -A和 git add . git add -u在功能上看似很相近,但还是存在一点差别 git add . :他会
git add [--all | -A] 之间有什么区别?和 git add . ? 最佳答案 此答案仅适用于 Git 版本 1.x。对于 Git 版本 2.x,请参阅其他答案。 总结: git ad
我刚刚安装了最新的 Wix v3.7。我创建了一个 VS 2010“Excel 2010 加载项”项目,并在同一个解决方案中创建了一个 Wix“安装项目”。 问题是,当我尝试从 Wix 项目中引用 A
YUI.add 和 YUI().add 有什么区别? 最佳答案 在第一种情况下,您要注册一个模块可以加载到 YUI 沙箱中,在第二种情况下,您要构建一个沙箱,然后进行注册(这是一种非常不典型的用法)。
测试代码时,任何输入到列表中的值在按下“enter”后都会消失。 我对编程和网络开发非常陌生。请具体一点,以便我理解。 function addItem(){ var item = documen
我正在浏览 python 的 dis 包。我尝试了代码以查看它是如何工作的 >>> def get(): ... x=4 ... y=x+3 ............ this lin
我已经对我的文件夹进行了版本控制 git init git add . git commit -m 'Initial commit' 我应该怎么做 git add 对于我在 .? 中创建的每个新文件
当我执行 $ git add * 时,有时我意识到 git 不会将已删除的文件添加到舞台上,如果删除或添加它,我需要手动指示,但我想不通找出 $ git add --all 有什么区别。因此,如果星号
这个问题在这里已经有了答案: Difference between "git add -A" and "git add ." (12 个答案) 关闭 6 年前。 目前,当我想提交并将内容推送到远程
我是一名优秀的程序员,十分优秀!