一个Tkinter Listbox的问题

约翰羊 2017-02-02 09:34:21
刚学python有个问题。

我从网页上抓了些内容,用贴子的id做为字典的key,贴子的标题,版块,作者啥的一个数组做为value


然后我把标题做为内容添加到listbox中

标题全是中文而且各种字符都有而且很长,我怕处理起来会有什么问题,所以没用标题当字典的key

但是我在处理listbox的单击时遇到了困难,我在listbox里保存的是标题,这样就不能拿标题直接取贴子id。

后来看可以用keys()取key值,试了试,说key又不支持用index,现在想了两条路,一是把id和标题一起当成Listbox的内容,取出来的时候做个处理,可以取到uid,但是这样显示不太好看。还有一条路,是for遍历keys,index值一样的时候,取id,但是总觉得不太好。

以前我用java时,可以自己处理显示哪一列,所以没啥问题。现在用python,搜了搜,没什么例子。所以问问各位前辈,给点拨点拨。

谢谢。
...全文
335 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
约翰羊 2017-02-04
  • 打赏
  • 举报
回复
引用 2 楼 u012536120 的回复:
我想了个办法,不用字典,用列表 ——因为字典无序,列表有序 这样,用listbox的curselection就能关联到原数据了。 代码如下:
#! /usr/bin/python
# -*- coding:utf-8 -*-

from Tkinter import *

root=Tk()
content=[['1','标题1','板块1','作者1'],
['2','标题2','板块2','作者2']]

listb=Listbox(root,selectmode = SINGLE)
text=Text(root)

for key in content:
	listb.insert(END,key[1])

def getContent(event):
	key=listb.curselection()[0]
	con=''
	con=content[key][3]+'\n'+content[key][2]
	#text.delete(END)#文档看不懂,方法不会用
	text.insert(END,con)

listb.bind('<Double-Button-1>',getContent) 
listb.pack()
text.pack()

root.mainloop()
给个链接,里面的控件可以点进去看说明 Python GUI编程(Tkinter) 网上很难找到什么Tkinter的教程,你照什么学的,给我一份?
一句话点醒梦中人 对啊,用列表就可以控制了
sanGuo_uu 2017-02-03
  • 打赏
  • 举报
回复
我想了个办法,不用字典,用列表 ——因为字典无序,列表有序 这样,用listbox的curselection就能关联到原数据了。 代码如下:
#! /usr/bin/python
# -*- coding:utf-8 -*-

from Tkinter import *

root=Tk()
content=[['1','标题1','板块1','作者1'],
['2','标题2','板块2','作者2']]

listb=Listbox(root,selectmode = SINGLE)
text=Text(root)

for key in content:
	listb.insert(END,key[1])

def getContent(event):
	key=listb.curselection()[0]
	con=''
	con=content[key][3]+'\n'+content[key][2]
	#text.delete(END)#文档看不懂,方法不会用
	text.insert(END,con)

listb.bind('<Double-Button-1>',getContent) 
listb.pack()
text.pack()

root.mainloop()
给个链接,里面的控件可以点进去看说明 Python GUI编程(Tkinter) 网上很难找到什么Tkinter的教程,你照什么学的,给我一份?
约翰羊 2017-02-03
  • 打赏
  • 举报
回复
up............

37,719

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • IT.BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧