小编Sia*_*ami的帖子

如何将复杂的指针数据作为属性放入qt plugin xml文件中

我在Qt中实现了一个小部件,如下所示:

class MyWidget : public QWidget
{
    Q_OBJECT
    Q_PROPERTY( bool BooVal READ getBoolVal WRITE setBoolVal)
    Q_PROPERTY( MyPointer* PointerData READ getPointer WRITE setPointer);

    ...
}
Run Code Online (Sandbox Code Playgroud)

我想在QtDesinger中使用它.因此我实现了QDesignerCustomWidgetInterface接口,如下所示:

class MyPlugin : public QObject, public QDesignerCustomWidgetInterface
{

    ...
} 

QWidget *MyPlugin::createWidget( QWidget *parent )   
{    
    return new MyWidget(parent);
}
Run Code Online (Sandbox Code Playgroud)

但是在QtDesigner属性窗口中,我无法像Q_PROPERTY(MyPointer*PointerData ...)那样设置复杂数据.像QTreeWidget这样的Qt小部件可以通过自定义界面在QtDesigner中设置复杂的指针数据.例如,当我设置父节点及其子节点时,在QTreeWidget中,如下所示,出现在.ui文件中

<widget class="QTreeWidget" name="treeWidget">
  <item>
    <property name="text">
       <string>1</string>
    </property>
    <item>
       <property name="text">
           <string>1-1</string>
       </property>
    </item>
  </item>
</widget>
Run Code Online (Sandbox Code Playgroud)

实际上我想创建一个像QTreeWidget这样的插件,并通过QtDesinger设置像QTreeWidgetItem*这样的复杂数据.

c++ plugins qt qwidget

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

如何在具有NULL值的字段上进行分组?

我有一个有2个字段的表

 x          y
----       ----
 1         null            
 2          5
 3          5
 4         null
 5         null
 6          10
 7          5
Run Code Online (Sandbox Code Playgroud)

我的SQLite查询是

select y,count(y)
from mytable
group by y
Run Code Online (Sandbox Code Playgroud)

结果是

null    0
 5      3
 10     1
Run Code Online (Sandbox Code Playgroud)

预计会看到null 3.
但输出为null 0.
这是什么意思?

sql sqlite null group-by count

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

如何在没有stopPropagation方法的情况下停止事件冒泡

有一些像这样的HTML代码:

<ul>
    <li id='root' class='tree-node'>
      root
      <ul>
        <li class='tree-node' id='node1'>node1</li>
        <li class='tree-node' id='node2'>node2</li>
        <li class='tree-node' id='node3'>node3</li>
        <li class='tree-node' id='node4'>node4
            <ul>
                <li class='tree-node' id='node4-1' >node4-1</li>
                <li class='tree-node' id='node4-2' >node4-2</li>                    
            </ul>
        </li>
      </ul>
    </li>

<ul>
Run Code Online (Sandbox Code Playgroud)

我想将click事件绑定到具有树节点类的每个标记

并将click事件绑定到文档

这是我的代码:

$(".tree-node").click(function(e){
    console.log($(this).attr("id"));
});

$(document).click(function(e){
    console.log("document clicked!");   
});
Run Code Online (Sandbox Code Playgroud)

stopPropagation()是否有任何替代方法可以阻止事件从node4-2冒泡到其父节点?

小提琴:http://jsfiddle.net/R6ySc/

javascript jquery event-bubbling stoppropagation

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