小编gpo*_*poo的帖子

如何在Glade3中使用垂直滚动条使GtkTreeView工作?

我正在使用glade 3,创建TreeView并成功添加了行作为算法完成,但我有一个小问题,因为treeview将添加新行,因此我的"GUI"将变得更长到下面,我怎么能添加滚动条为这个TreeView?为了让我的"GUI"不再存在?

注意:我已添加"新调整"并将其连接到TreeView和ScrollBar垂直,但仍然无法完成工作.

任何的想法?

gtk glade scrollbar gtktreeview

11
推荐指数
1
解决办法
4454
查看次数

Python + GTK:如何在gtk.treeview上设置选定的行

我正在尝试做键盘命令.当我插入S+ some_number+时,Return我需要调用一个函数,该函数将在列上看到此数字Gtk.Treeview并设置该行已选中.我怎样才能做到这一点?

python gtk gtktreeview

11
推荐指数
1
解决办法
5605
查看次数

从C文件调用C++函数

我是C和C++的新手.但我有一些C++函数,我需要从C调用它们.我做了一个我需要做的例子


main.c:

#include "example.h"      
#include <stdio.h>

int main(){   
    helloWorld();
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

example.h:

 #ifndef HEADER_FILE
 #define HEADER_FILE

 #ifdef __cplusplus
     extern "C" {
 #endif
         void helloWorld();
 #ifdef __cplusplus
     }
 #endif

 #endif
Run Code Online (Sandbox Code Playgroud)

example.cpp:

#include <iostream.h>

void helloWorld(){
    printf("hello from CPP");
} 
Run Code Online (Sandbox Code Playgroud)

它只是不起作用.我仍然收到未定义参考错误_helloWorld在我main.c.这个问题在哪里?

c c++ merge call

11
推荐指数
1
解决办法
2万
查看次数

查找矩阵中连通集总数的算法

我想知道我应该在这里应用哪种算法.将一个DFS吗?

给定一个二维矩阵.查找该矩阵中已连接集的总数.

连接集可以被定义为其上具有1个并且在该集合中具有至少一个其他小区的小区组,它们与所述小区共享邻居关系.其中包含1并且没有周围邻居的小区可以被认为是其中包含一个小区的集合.邻居可以被定义为在8个可能方向(即N,W,E,S,NE,NW,SE,SW方向)上与给定小区相邻的所有小区.细胞不是自身的邻居.

例如:

1 0 0 1

0 0 1 0

0 0 1 0

1 0 0 1
Run Code Online (Sandbox Code Playgroud)

连接数量为3

0 0 1 0 0 1 0 0

1 0 0 0 0 0 0 1

0 0 1 0 0 1 0 1

0 1 0 0 0 1 0 0

1 0 0 0 0 0 0 0

0 0 1 1 0 1 1 0

1 0 1 1 0 1 1 0

0 …
Run Code Online (Sandbox Code Playgroud)

algorithm graph-theory graph

10
推荐指数
2
解决办法
2万
查看次数

暧昧的模板怪异

我有以下代码(抱歉大代码块,但我不能再缩小它)

template <bool B>
struct enable_if_c {
      typedef void type;
};

template <>
struct enable_if_c<false> {};

template <class Cond>
struct enable_if : public enable_if_c<Cond::value> {};

template <typename X>
struct Base { enum { value = 1 }; };

template <typename X, typename Y=Base<X>, typename Z=void>
struct Foo;

template <typename X>
struct Foo<X, Base<X>, void> { enum { value = 0 }; };

template <typename X, typename Y>
struct Foo<X, Y, typename enable_if<Y>::type > { enum { value = 1 }; …
Run Code Online (Sandbox Code Playgroud)

c++ gcc templates specialization

8
推荐指数
1
解决办法
1401
查看次数

在尝试使用GSettings架构之前,如何确定它是否存在?

如果GSettings模式存在且已编译,则从中读取通常没有问题.但是,如果它不存在,通常会抛出一个无法处理的错误.在Python文件或控制台中尝试:

from gi.repository import Gio
try:
    settings = Gio.Settings("com.example.doesnotexist")
except:
    print "Couldn't load those settings!"
Run Code Online (Sandbox Code Playgroud)

我正在尽可能广泛地使用except,但这是抛出的错误.

(进程:10248):GLib-GIO-ERROR**:未安装设置架构'com.example.doesnotexist'

我基本上想要做的是找出com.example.doesnotexist架构是否存在; 如果没有,那么告诉用户在使用我的应用程序之前运行我的安装脚本.关于这样做的任何其他建议都是受欢迎的.

python pygobject gio

8
推荐指数
1
解决办法
1190
查看次数

如何在gtk.ScrolledWindow中的GtkTreeView中显示列标题?

我有一个问题与Gtk.Treeviewindide a Gtk.ScrolledWindow.我有大量的数据,不适合我的普通窗口几何,所以我把我的Treeview放在一个ScrolledWindow,这似乎是正常的方式.这个解决方案的问题是,当我滚动时,我的列标题消失了.这种行为对我来说似乎有点好,因为它ScrolledWindow应该关心它里面的小部件.

那么,如何让我的树视图是滚动第一行中总是显示栏标题?

我修改了basictreeview.py示例来表示我的问题:

#!/usr/bin/env python

# example basictreeview.py

import pygtk
pygtk.require('2.0')
import gtk

class BasicTreeViewExample:

    # close the window and quit
    def delete_event(self, widget, event, data=None):
        gtk.main_quit()
        return False

    def __init__(self):
        # Create a new window
        self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
        self.window.set_title("Basic TreeView Example")
        self.window.set_size_request(200, 200)
        self.window.connect("delete_event", self.delete_event)

        # create a TreeStore with one string column to use as the model
        self.liststore = gtk.ListStore(str)

        # we'll add some data …
Run Code Online (Sandbox Code Playgroud)

python gtk pygtk scrolledwindow gtktreeview

7
推荐指数
1
解决办法
2466
查看次数

在Gtk中,当在TreeView中使用拖放时,如何防止在行之间丢弃?

我正在测试一个看起来像这样的窗口:

替代文字

将标签拖动到卡片可将标签链接到卡片.将卡片拖动到标签也是如此.

在两张牌之间放一个标签,或者在两张牌之间放一张牌是没有意义的.我可以在Handle...DataReceived函数中忽略这些结果,如下所示:

if (dropPos != TreeViewDropPosition.IntoOrAfter &&
    dropPos != TreeViewDropPosition.IntoOrBefore)
    return;
Run Code Online (Sandbox Code Playgroud)

但是,在拖动时,用户仍会看到要插入的选项:

替代文字

我该如何防止这种情况发生?

c# gtk drag-and-drop gtk# gtktreeview

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

ListStore/TreeStore中的自定义对象

我有一个列表L我的类A的对象.这个类实现__str__/ __repr__,所以每个对象都有自己的字符串表示(不一定是唯一的).我在pygtk中有一个GUI,我有一个只有一列的TreeView小部件.我想用L中的对象的字符串表示来填充它,但是我希望将所选项目作为对象而不是字符串.有没有办法让TreeView存储对象列表,但是将它们显示为stings?如果没有,那么知道TreeView中选择了哪些对象的最佳方法是什么?问题还在于,根据某些条件,我可以不使用整个L填充TreeView,而是使用它的一些子列表,因此TreeView中的项目索引将与L中的项目索引不对应.

python pygtk gtktreeview

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

使用GObjects发送通知

目前似乎缺乏针对python的GObjects模块的文档,所以也许有人可以帮助我.

我正在制作一个应用程序,偶尔必须通知用户发生了一个事件.我发现使用from gi.repository import Notify和相关的类使用一个简短的片段来获取Skype通知和C文档,但是当我调用Notify.uninit时它似乎没有关闭.程序关闭,但小通知窗口的东西保持不变,必须通过右键单击并选择"删除"来关闭.所以,我想知道是否有另一种方式,如果有类似的东西,如果有什么类似于Mac OS中的应用程序图标震动/反弹时发生的事情或在Windows中应用程序图标发出不同的颜色?

我喜欢带有消息堆栈等的Gnome 3通知系统,但是因为当我的应用程序退出时我似乎无法让它消失,我真的不想使用它(除非有人知道如何正确地做到这一点.. .it可能是我忘了设置超时,但这仍然没有意义,为什么我不能让通知点消失).

python notifications gnome pygobject gnome-3

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