小编Don*_*uck的帖子

如何在QTableView中禁用编辑模式?

我正在使用QTableView.它工作正常.但问题是,如果我双击单元格,那么它将变为编辑模式.我需要禁用编辑选项.怎么做?

c++ qt

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

使用GNU readline处理多行输入有一种很好的方法吗?

我的应用程序有一个命令行界面,我正在考虑使用GNU Readline库来提供历史记录,可编辑的命令行等.

问题是我的命令可能很长而且复杂(想想SQL),我想让用户在多行上传播命令,使它们在历史记录中更具可读性.

是否可以在readline中执行此操作(可能通过指定换行符和命令结尾之间的差异)?

或者我会更好地实现自己的命令行(但可能使用GNU历史库)?

c command-line gnu readline

18
推荐指数
1
解决办法
3558
查看次数

如何让Widget在Qt中占据优势?

请看一下这个截图:

在此输入图像描述

圆圈是自定义控件.当我单击一个控件时,我需要将小部件放在前面.防爆.如果我点击第二个圆圈,它应该如下所示:

在此输入图像描述

单击控件后,我可以获取发件人(即控件).唯一的问题是如何将对象带到前面.

请帮我解决这个问题.

c++ qt

18
推荐指数
1
解决办法
3万
查看次数

MySQL Workbench:为什么是默认的VARCHAR(45)?

当我开始设计我的在纸上的数据库,我通常设置将varchar长度为32,64,128,256,等等.

但是,当我开始在MySQL工作台5.2ce工作,我发现我每次设定一个字段的类型为varchar,表格会默认它的大小设置为45时.

这是推荐值吗?

也许从历史上看,45是该varchar类型最常用的尺寸.如果是这样,为什么45?为什么不是48或47(也许它需要一个额外的词来保存我想的东西)?

我不明白.也许我应该将字段类型设置varchar(29)为存储长度为20个字符的字符串?

我做了一个搜索我发现许多人将他们的长度设置为255(而不是256).这会是一个严重的问题吗?

mysql mysql-workbench

18
推荐指数
0
解决办法
1834
查看次数

使用lambda作为C++函数的参数

我想使用lambda作为C++函数的参数,但我不知道在函数声明中指定哪种类型.我想做的是:

void myFunction(WhatToPutHere lambda){
    //some things
}
Run Code Online (Sandbox Code Playgroud)

我曾尝试void myFunction(auto lambda)void myFunction(void lambda),但没有这些代码的编译.如果重要,lambda不返回任何东西.

如何在lambin C++函数中使用lambda作为参数?

c++ lambda function c++11

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

Const不匹配:2个重载没有'this'指针的合法转换

我收到这个奇怪的错误:

错误C2663:'sf :: Drawable :: SetPosition':2个重载没有'this'指针的合法转换

我认为它与const不匹配有关,但我不知道在哪里或为什么.在下面的代码中,我有一个形状和精灵的向量,当试图访问其中一个向量形状并调用其中一个函数时,我得到了错误.

std::vector<sf::Shape> Shapes;
std::vector<sf::Sprite> Sprites;

bool AddShape(sf::Shape& S){
    Shapes.push_back(S); return true;
};
bool AddSprite(sf::Sprite& S){
    Sprites.push_back(S); return true;
};

private:

virtual void Render(sf::RenderTarget& target) const {                
    for(unsigned short I; I<Shapes.size(); I++){
        Shapes[I].SetPosition(
            Shapes[I].GetPosition().x + GetPosition().x,
            Shapes[I].GetPosition().y + GetPosition().y);
        target.Draw(Shapes[I]);
    }
    for(unsigned short I; I<Sprites.size(); I++){
        target.Draw(Sprites[I]);
    }
}
Run Code Online (Sandbox Code Playgroud)

我怎样才能解决这个问题?

c++ const vector this-pointer

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

该操作无法完成.cpio读取错误:未定义错误:0

我在安装Xcode 8时遇到错误.在此输入图像描述

这次我从苹果获得了Xcode_8.xip Xcode文件.我目前的操作系统版本是10.11.4(15E65).

即使我之前已经成功安装了xcode8 beta.

installation xcode

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

Gradle - “未跟踪更改,无法确定增量更改。”

运行我的 LibGDX 桌面项目时,有时会出现此错误:

Changes are not tracked, unable determine incremental changes.

我尝试过使用 Java 8 和 17。我使用的是 Gradle 7.4.2。

我已经尝试过这里提到的更改,但它们似乎是针对 Kotlin 项目的。

我正在努力寻找有关导致此问题的更多信息。

我还能尝试什么来解决这个问题?

java gradle libgdx

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

如何将Qcolor值转换为十六进制值?

我已经实现了一个在某些条件下打开的QColor对话框.要在最终选择后获得所选颜色,我使用selectedColor()返回QColor中的值的方法.当我打印该值时,它是这样的:

<PyQt4.QtGui.QColor object at 0x01DD7880>
Run Code Online (Sandbox Code Playgroud)

我想要十六进制值的颜色值,如下所示:( #DFDFDF灰色).如果它不是十六进制,请纠正我.

有没有转换它的功能?

欢迎任何建议.

qt hex pyqt

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

当我向函数传递太多参数时,为什么PHP不会抛出错误?

我是php的n00b.我正在学习默认参数,所以我做了这个功能.

function doFoo($name = "johnny"){
    echo "Hello $name" . "<br />";
}
Run Code Online (Sandbox Code Playgroud)

我做了这些电话

doFoo();
doFoo("ted");
doFoo("ted", 22);
Run Code Online (Sandbox Code Playgroud)

前两个印刷了预期的即

Hello johnny
Hello ted
Run Code Online (Sandbox Code Playgroud)

但第三次电话也印了

Hello ted
Run Code Online (Sandbox Code Playgroud)

在为一个参数创建所有函数之后,我期待一个错误,而我用两个参数调用它.
为什么没有错误?

php methods function

16
推荐指数
3
解决办法
3443
查看次数