当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 16 篇帖子 ]  前往页数 1, 2  下一页
作者 内容
1 楼 
 文章标题 : GTK怎样根据值找到列表控件中指定的一行?
帖子发表于 : 2012-12-20 10:59 
头像

注册: 2012-10-13 9:32
帖子: 13
系统: archlinux
送出感谢: 0 次
接收感谢: 0 次
GtkListStore可以插入一行一行的数据,可是我现在想根据一行的第一列数据的值找到这一行数据。找到它的指针。

比如有一下一个列表
名字 分数
chao 60
xiaom 100
defei 90
我知道了xiaom这个名字想在列表中找它的分数,怎样获得指向xiaom 100的iter才能读取它的分数值?
我知道了xiaom这个名字,我想把它从列表中删除怎么做呢?

怎样查找指定值在列表中的位置呢?
难道要自己遍历吗?


页首
 用户资料  
 
2 楼 
 文章标题 : Re: GTK怎样根据值找到列表控件中指定的一行?
帖子发表于 : 2012-12-20 11:17 
头像

注册: 2009-03-28 16:10
帖子: 1849
系统: Arch debian win7
送出感谢: 10
接收感谢: 70
这种问题为什么不用<key,value>这样的结构呢,gtk应该可以用这样的结构做数据源吧。只是猜的,反正Qt是可以这样做的,数据跟界面可以完全分开,数据变化之后界面实时更新。


_________________
为什么我的问题总是没有人回答?

金钱、责任与荣誉:OpenSSL主席谈心脏出血
拥有丰富API接口和广泛程序支持的dropbox云同步,点此注册,开始就比别人多500兆,我的空间也会增加。谢啦
==========我的作品==========
我做的一个面向开发者的gnome-shell扩展,有js基础又想自己调整gnome-shell功能的可以尝试一下
gnome-shell扩展开发入门,gnome-shell扩展系统扫盲帖


页首
 用户资料  
 
3 楼 
 文章标题 : Re: GTK怎样根据值找到列表控件中指定的一行?
帖子发表于 : 2012-12-20 12:18 
头像

注册: 2012-10-13 9:32
帖子: 13
系统: archlinux
送出感谢: 0 次
接收感谢: 0 次
zhw2101024 写道:
这种问题为什么不用<key,value>这样的结构呢,gtk应该可以用这样的结构做数据源吧。只是猜的,反正Qt是可以这样做的,数据跟界面可以完全分开,数据变化之后界面实时更新。

GTK 的列表是MVC模式的。就是没有找到<key.value>
MVC数据和数据显示是分开的。


页首
 用户资料  
 
4 楼 
 文章标题 : Re: GTK怎样根据值找到列表控件中指定的一行?
帖子发表于 : 2012-12-20 13:40 
头像

注册: 2005-08-14 21:55
帖子: 58428
地址: 长沙
送出感谢: 4
接收感谢: 274
GtkListStore 上次也搞晕了。似乎不能根据单独的数字/字符串(结果)去定位项目。
get_selected_items没有反推的函数。
你可以去stackoverflow问问。


_________________
● 鸣学


页首
 用户资料  
 
5 楼 
 文章标题 : Re: GTK怎样根据值找到列表控件中指定的一行?
帖子发表于 : 2012-12-20 13:42 
头像

注册: 2009-03-28 16:10
帖子: 1849
系统: Arch debian win7
送出感谢: 10
接收感谢: 70
R-man 写道:
zhw2101024 写道:
这种问题为什么不用<key,value>这样的结构呢,gtk应该可以用这样的结构做数据源吧。只是猜的,反正Qt是可以这样做的,数据跟界面可以完全分开,数据变化之后界面实时更新。

GTK 的列表是MVC模式的。就是没有找到<key.value>
MVC数据和数据显示是分开的。

如果查找用的比较多的话,可以考虑哈希表,网上有很多C语言实现哈希表的代码,或者标准库函数里面找找有没有哈希表的,没有谁逼着你非得用GTK的函数。使用C语言一个很大的好处是可以非常方便的添加自己的算法。


_________________
为什么我的问题总是没有人回答?

金钱、责任与荣誉:OpenSSL主席谈心脏出血
拥有丰富API接口和广泛程序支持的dropbox云同步,点此注册,开始就比别人多500兆,我的空间也会增加。谢啦
==========我的作品==========
我做的一个面向开发者的gnome-shell扩展,有js基础又想自己调整gnome-shell功能的可以尝试一下
gnome-shell扩展开发入门,gnome-shell扩展系统扫盲帖


页首
 用户资料  
 
6 楼 
 文章标题 : Re: GTK怎样根据值找到列表控件中指定的一行?
帖子发表于 : 2012-12-20 13:46 
头像

注册: 2005-08-14 21:55
帖子: 58428
地址: 长沙
送出感谢: 4
接收感谢: 274
zhw2101024, 当你使用控件的时候,尤其iconview的时候,别想有另类的数据结构可以代替了。


_________________
● 鸣学


页首
 用户资料  
 
7 楼 
 文章标题 : Re: GTK怎样根据值找到列表控件中指定的一行?
帖子发表于 : 2012-12-20 14:07 
头像

注册: 2009-03-28 16:10
帖子: 1849
系统: Arch debian win7
送出感谢: 10
接收感谢: 70
eexpress 写道:
zhw2101024, 当你使用控件的时候,尤其iconview的时候,别想有另类的数据结构可以代替了。

学习了,没用过GTK,就用过QT。有些QT里的东西也不好弄,比如日历控件很难自定义,当时头疼了好久。


_________________
为什么我的问题总是没有人回答?

金钱、责任与荣誉:OpenSSL主席谈心脏出血
拥有丰富API接口和广泛程序支持的dropbox云同步,点此注册,开始就比别人多500兆,我的空间也会增加。谢啦
==========我的作品==========
我做的一个面向开发者的gnome-shell扩展,有js基础又想自己调整gnome-shell功能的可以尝试一下
gnome-shell扩展开发入门,gnome-shell扩展系统扫盲帖


页首
 用户资料  
 
8 楼 
 文章标题 : Re: GTK怎样根据值找到列表控件中指定的一行?
帖子发表于 : 2012-12-20 14:08 
头像

注册: 2005-08-14 21:55
帖子: 58428
地址: 长沙
送出感谢: 4
接收感谢: 274
日历控件,我一直有继承出一个新控件的冲动。。
的确。


_________________
● 鸣学


页首
 用户资料  
 
9 楼 
 文章标题 : Re: GTK怎样根据值找到列表控件中指定的一行?
帖子发表于 : 2012-12-20 14:35 
头像

注册: 2010-01-17 15:39
帖子: 403
系统: Debian Wheezy AMD64
送出感谢: 0 次
接收感谢: 6
自己实现一个GtkTreeModel的类,俺就是这么做的。
否则乃就需要遍历来寻找了


_________________
OS: Debian Wheezy (Testing) for AMD64~~~
Mobile Phone: Nokia N900, OS: Maemo 5.0 (Base on Debian)~~~
本人的项目: RhythmCat(Linux下的音乐播放器.....支持歌词等功能...)
http://code.google.com/p/rhythmcat

RhythmCat 2进行中 (https://github.com/supercatexpert/RhythmCat2/)


页首
 用户资料  
 
10 楼 
 文章标题 : Re: GTK怎样根据值找到列表控件中指定的一行?
帖子发表于 : 2012-12-20 14:42 
头像

注册: 2005-08-14 21:55
帖子: 58428
地址: 长沙
送出感谢: 4
接收感谢: 274
自己实现啊。最无奈的方法了。看到过一些自己实现iconview的。

遍历也不能对item设置selected的状态吧。


_________________
● 鸣学


页首
 用户资料  
 
11 楼 
 文章标题 : Re: GTK怎样根据值找到列表控件中指定的一行?
帖子发表于 : 2012-12-20 14:46 
头像

注册: 2009-03-28 16:10
帖子: 1849
系统: Arch debian win7
送出感谢: 10
接收感谢: 70
我在Qt很少用Widget的,自己用Model实现的居多,感觉自由一点。


_________________
为什么我的问题总是没有人回答?

金钱、责任与荣誉:OpenSSL主席谈心脏出血
拥有丰富API接口和广泛程序支持的dropbox云同步,点此注册,开始就比别人多500兆,我的空间也会增加。谢啦
==========我的作品==========
我做的一个面向开发者的gnome-shell扩展,有js基础又想自己调整gnome-shell功能的可以尝试一下
gnome-shell扩展开发入门,gnome-shell扩展系统扫盲帖


页首
 用户资料  
 
12 楼 
 文章标题 : Re: GTK怎样根据值找到列表控件中指定的一行?
帖子发表于 : 2012-12-20 14:50 
头像

注册: 2012-10-13 9:32
帖子: 13
系统: archlinux
送出感谢: 0 次
接收感谢: 0 次
supercatexpert 写道:
自己实现一个GtkTreeModel的类,俺就是这么做的。
否则乃就需要遍历来寻找了


这个压力好大,不知的它的类是怎么实现的,没看过源码


页首
 用户资料  
 
13 楼 
 文章标题 : Re: GTK怎样根据值找到列表控件中指定的一行?
帖子发表于 : 2012-12-20 15:06 
头像

注册: 2009-03-28 16:10
帖子: 1849
系统: Arch debian win7
送出感谢: 10
接收感谢: 70
R-man 写道:
supercatexpert 写道:
自己实现一个GtkTreeModel的类,俺就是这么做的。
否则乃就需要遍历来寻找了


这个压力好大,不知的它的类是怎么实现的,没看过源码

不知道文档里有没有相关的内容,先别急着看源码。GtkTreeModel应该有扩展的接口。


_________________
为什么我的问题总是没有人回答?

金钱、责任与荣誉:OpenSSL主席谈心脏出血
拥有丰富API接口和广泛程序支持的dropbox云同步,点此注册,开始就比别人多500兆,我的空间也会增加。谢啦
==========我的作品==========
我做的一个面向开发者的gnome-shell扩展,有js基础又想自己调整gnome-shell功能的可以尝试一下
gnome-shell扩展开发入门,gnome-shell扩展系统扫盲帖


页首
 用户资料  
 
14 楼 
 文章标题 : Re: GTK怎样根据值找到列表控件中指定的一行?
帖子发表于 : 2012-12-20 15:12 
头像

注册: 2010-01-17 15:39
帖子: 403
系统: Debian Wheezy AMD64
送出感谢: 0 次
接收感谢: 6
GtkTreeModel本来就不是一个类,而是 接口
可以参考GtkListStore来写,它是实现了GtkTreeModel接口的一个类


_________________
OS: Debian Wheezy (Testing) for AMD64~~~
Mobile Phone: Nokia N900, OS: Maemo 5.0 (Base on Debian)~~~
本人的项目: RhythmCat(Linux下的音乐播放器.....支持歌词等功能...)
http://code.google.com/p/rhythmcat

RhythmCat 2进行中 (https://github.com/supercatexpert/RhythmCat2/)


页首
 用户资料  
 
15 楼 
 文章标题 : Re: GTK怎样根据值找到列表控件中指定的一行?
帖子发表于 : 2012-12-21 9:07 
头像

注册: 2012-10-13 9:32
帖子: 13
系统: archlinux
送出感谢: 0 次
接收感谢: 0 次
supercatexpert 写道:
GtkTreeModel本来就不是一个类,而是 接口
可以参考GtkListStore来写,它是实现了GtkTreeModel接口的一个类

我正好用listStore啊,GTK用C实现面向对象,搞的我不知到怎么按照它的样子实现类和继承了


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 16 篇帖子 ]  前往页数 1, 2  下一页

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 0 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译