当前位置: 技术问答>linux和unix
菜鸟关于Gtk+ 问题
来源: 互联网 发布时间:2016-10-09
本文导语: 我想编写个Gtk+的程序,用了一个分栏列表构件GtkCList 然后想不停的循环,从别的地方读取数据,写入到这个列表中,也就是滚屏的输出结果 但是我不知道怎么和gtk_main()函数同步 也就是说我可以一边滚屏输出结果,...
我想编写个Gtk+的程序,用了一个分栏列表构件GtkCList
然后想不停的循环,从别的地方读取数据,写入到这个列表中,也就是滚屏的输出结果
但是我不知道怎么和gtk_main()函数同步
也就是说我可以一边滚屏输出结果,一边响应事件
除了多线程和定时器,那个有点不符合我的要求
不知道我表达清楚了吗
各位大侠帮帮忙?
然后想不停的循环,从别的地方读取数据,写入到这个列表中,也就是滚屏的输出结果
但是我不知道怎么和gtk_main()函数同步
也就是说我可以一边滚屏输出结果,一边响应事件
除了多线程和定时器,那个有点不符合我的要求
不知道我表达清楚了吗
各位大侠帮帮忙?
|
不用多线程或定时器,用循环的情况在循环木有结束之前
应该会出现假死状态而不能操作吧,即便可能达到滚屏输出的效果,但界面还是假死》。
只有一个线程,被你这不停的循环给占用了,你还想做什么呢》。
定时器就挺不错啊,如果单纯循环,那速度飞快呀,滚屏刷刷地
应该会出现假死状态而不能操作吧,即便可能达到滚屏输出的效果,但界面还是假死》。
只有一个线程,被你这不停的循环给占用了,你还想做什么呢》。
定时器就挺不错啊,如果单纯循环,那速度飞快呀,滚屏刷刷地
|
你要这样做就肯定得同步数据,否则如何确认你要的数据已准备好,这是设计问题,无论你是用线程、定时、信号、事件还是啥
|
或许我没弄明白你的需求,你要同步什么?是显示列表的同时用另一个线程滚屏,还是响应比如单击列表项这样的事件呢,滚屏是指什么?出现滚动条还是自动下拉等?通常比如GtkListStore等这样的组件不是自动会根据情况出现滚动条吗
至于线程,任何共享的数据都需要小心同步的
至于线程,任何共享的数据都需要小心同步的
|
你应该意识到你的程序已经不是一个串行程序
|
用gtk_main_iteration可以回到gtk_main,其他自己考虑吧