标签: listctrl

使用任意wx对象作为wx.ListCtrl中的列

我有一个wx.ListCtrlwx.LC_REPORT位设置.它有3列.我希望第一列填充每个其他条目的复选框.我尝试使用该ListCtrl.InsertItem方法,但它只需要一个参数(info),我找不到任何关于该参数需要的文档.我已经试过路过一家wx.CheckBoxInsertItem无济于事.

是否可以将复选框作为wxPython ListCtrl中的条目?如果是这样,我将如何做到这一点?

如果对于我正在谈论的内容有任何歧义,这里是我想要的图片(不确定这是否是wx,但它是我正在寻找的).我想要在No.列中的1..5旁边的复选框.

列表控件与复选框

python wxpython listctrl

6
推荐指数
1
解决办法
3284
查看次数

wxPython - 根据输入到textctrl动态更新listctrl

你们中的任何人都有一个例子如何使以下成为可能:

我有一个listctrl显示> 600项.现在,我需要在这些项目中搜索用户输入的文本,并更新列表以仅显示包含此字符串的项目.

所以我们说这个列表包含"Hello","Hi"和"Morning".该列表显示所有三个项目.现在用户在textctrl中键入"h",listctrl缩小为"Hello"和"Hi".如果用户改为输入"o",则列表变为"Hello"和"Morning".

这可能吗?或者有没有其他方便的方法来查找listctrl中的项目?如果您确切地知道您搜索的内容,那么"在您键入时查找"的构建仅具有实际用途 - 在我的情况下,实际情况并非如此......

谢谢,Woodpicker

python wxpython dynamic listctrl

5
推荐指数
1
解决办法
3821
查看次数

wxPython listctrl 闪烁快速更新

我将一些行放入列表控件中,然后相当快地更新它们 - 通常数据来自总线 - 并且整个列表闪烁很多。阻止它这样做真是太好了。

我尽可能地减少了代码,同时仍然保持我在下面的示例中所做的事情的总体外观。

lisctrl 是在 wx.Notebook 中还是在普通的 wx.Panel 中似乎并不重要,所以我把笔记本留在那里。

我已经开始研究双缓冲,但想看看是否还有其他可以先尝试的方法。

在 Windows 7 上使用 wxPython 2.8.12.1 执行此操作。XP 上也会发生。

import sys
import time
import logging
import wx
from random import randint

UPDATE_MS=10

class CanMsg(object):
    def __init__(self, ID, type, len, data=None):
        """Represents a CAN message"""
        self.ID=ID          # 11/29-bit message identifier
        self.MSGTYPE=type # Type of the message
        self.LEN=len          # Data Length Code of the message (0..8)
        if data:
            self.DATA=data
        else:
            self.DATA=[0,]*len

class EmulatorFrame(wx.Frame):
    def __init__(self, parent, id, title, pos=wx.DefaultPosition, size=wx.DefaultSize, …
Run Code Online (Sandbox Code Playgroud)

wxpython flicker listctrl

5
推荐指数
1
解决办法
1892
查看次数

wxPython wxListCtrl选择了行颜色

我希望选择某些行的颜色为红色而不是标准颜色(窗口上的蓝色),以便我可以指示状态.任何人都知道wxPython中是否可以这样做?

wxpython row colors selected listctrl

4
推荐指数
1
解决办法
4827
查看次数

wxPython ListCtrl OnClick事件

所以,我有一个包含数据行的wxPython ListCtrl.如果单击其中一行,如何使用行内容调用函数调用?

events wxpython call listctrl event-binding

3
推荐指数
1
解决办法
6718
查看次数

ListCtrl - wxPython/Python

我的问题是,我们是否可以为某个项目分配/绑定某个值并隐藏该值(或者如果我们可以用另一种方式做同样的事情).

示例:假设ListCtrl上的列是"Name"和"Description":

self.lc = wx.ListCtrl(self, -1, style=wx.LC_REPORT)
self.lc.InsertColumn(0, 'Name')
self.lc.InsertColumn(1, 'Description')
Run Code Online (Sandbox Code Playgroud)

当我添加一个项目时,我希望它们显示Name参数和描述:

num_items = self.lc.GetItemCount()
        self.lc.InsertStringItem(num_items, "Randomname")
        self.lc.SetStringItem(num_items, 1, "Some description here")
Run Code Online (Sandbox Code Playgroud)

现在我想要做的是基本上为未显示的项目分配一些内容,以便稍后我可以在应用程序上访问.

所以我想添加一些未在应用程序上显示但在项目值上的内容,如:

hiddendescription = "Somerandomthing"
Run Code Online (Sandbox Code Playgroud)

还是没有看不到?好吧,我想添加一个按钮来添加一个项目与其他一些TextCtrls来设置参数,TextCtrls参数是:

"名称"

"描述"

"Hiddendescription"

然后,用户填写这些文本,然后单击按钮创建项目,我基本上只想显示名称和描述并隐藏"HiddenDescription"但是这样做我以后可以使用它.

很抱歉在这篇文章中解释了超过1次,但我想确保你理解我假装做的事情.

python wxpython listctrl

3
推荐指数
1
解决办法
4925
查看次数

删除并重新添加所有项目和所有列时,Listview在Win32对话框上闪烁

考虑一个简单的Win32对话框,其中包含用C++编写的listview控件(在报表模式下).在某个事件中,将删除所有项目和所有列,并创建新的列和项目.基本上,随着内容的更改,将根据内容自动生成列.

删除旧项目/列并添加新项目时,listview会像地狱一样闪烁.我尝试过WM_SETREDRAW并且LockWindowUpdate()没有改变视觉体验.

我甚至设置了扩展列表视图样式LVS_EX_DOUBLEBUFFER,这根本没有帮助.

父对话框已WS_CLIPCHILDREN设置.

有关如何使用尽可能少的闪烁工作的任何建议吗?我正在考虑使用两个列表视图,交替可见性,使用隐藏的一个作为后台缓冲区,但这听起来像是一种矫枉过正.必须有一个简单的方法.

c++ winapi mfc listview listctrl

3
推荐指数
1
解决办法
3567
查看次数

标签 统计

listctrl ×7

wxpython ×6

python ×3

c++ ×1

call ×1

colors ×1

dynamic ×1

event-binding ×1

events ×1

flicker ×1

listview ×1

mfc ×1

row ×1

selected ×1

winapi ×1