小编xx7*_*aBs的帖子

为Mac OS X创建漂亮的dmg"安装程序"

我已经为Mac OS X制作了我的第一个Qt应用程序.现在我想创建一个很好的.dmg文件,允许用户轻松安装它.我在想像firefox这样的东西(见图): 在此输入图像描述

我完全是新手,所以我甚至不知道从哪里开始.

macos installation dmg

76
推荐指数
3
解决办法
6万
查看次数

Qt - '影子大厦'?

我有一个简单的问题 - 什么是影子建筑?我在Qt的Target Setup对话框中看过它,但不知道它做了什么或是否应该使用它.

它也出现在"常规"组下的"项目"选项卡中.

qt build-process desktop-application

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

将Qt默认编码设置为UTF-8

在我的Qt应用程序中,我的源代码文件被编码为UTF-8.对于以下代码......

QMessageBox::critical(this, "Nepoznata pogreška", "Dogodila se nepoznata pogreška! Želite li zatvoriti ovaj program ?", QMessageBox::Yes, QMessageBox::No);
Run Code Online (Sandbox Code Playgroud)

...当我显示该消息框时,字符"š"不会显示为"š",而是显示为奇怪的东西.这是因为Qt将所有C字符串转换为使用LATIN-1编码.为了解决这个问题,我一直在使用:

QMessageBox::critical(this, QString::fromUtf8("Nepoznata pogreška"), QString::fromUtf8("Dogodila se nepoznata pogreška! Želite li zatvoriti ovaj program ?"), QMessageBox::Yes, QMessageBox::No);
Run Code Online (Sandbox Code Playgroud)

有没有办法摆脱所有的电话QString::fromUtf8()

qt c-strings utf-8 character-encoding

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

监视进程的子进程

我正在使用此代码运行.exe文件:

Process proc = Process.Start("c:\program.exe");
proc.WaitForExit();
Run Code Online (Sandbox Code Playgroud)

如果我Stopwatch在开始流程之前启动并proc.WaitForExit();在行之后停止它,我可以获得用户使用该特定程序的时间.

我面临的问题是一些程序(和游戏)使用启动器 - 一些小的.exe文件,通常检查一些东西,然后启动另一个.exe文件,实际上是用户想要运行的程序/游戏.在这些情况下,上面的代码不起作用,因为它在启动器存在后返回.

如何跟踪所有proc运行的进程,并等待unitl所有进程终止?

.net c# process

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

子进程接收父进程的SIGINT

我有一个使用Qt Framework的简单程序.它使用QProcess来执行RAR并压缩一些文件.在我的程序中,我正在捕获SIGINT并在代码中执行某些操作:

signal(SIGINT, &unix_handler);
Run Code Online (Sandbox Code Playgroud)

当SIGINT发生时,我检查RAR进程是否完成,如果不是,我将等待它...问题是(我认为)RAR进程也得到了SIGINT,这是我的程序,它退出之前它压缩了所有文件.

有没有办法运行RAR进程,以便在我的程序收到它时它不会收到SIGINT?

谢谢

c c++ unix linux

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

Diff只改变了部分线条

是否可以仅显示旧线和新线之间的差异git diff

这是文件a.txt的内容:

123456789

这是文件b.txt的内容

123455789

这是正常git diff输出:

正常输出

这就是我想要完成的事情: 想要输出

我更喜欢这样做git diff,但如果不能这样做,我可以使用任何其他应用程序.

git bash diff

14
推荐指数
1
解决办法
2027
查看次数

UIAppearance代理规则什么时候应用于新的视图控制器?

当UIAppearance规则准确应用于某个新的视图控制器时,我正在徘徊?

我制定了一些全局规则,我在我的app委托中调用它们.这样所有UIButton看起来都一样.但现在我想修改一个UIButton的外观.我已经尝试将代码删除它的背景,- (void)viewDidLoad但它不起作用 - UIAppearance规则尚未应用.在一个ViewController中,我将修改代码放在里面- (void)viewWillLayoutSubviews并且它工作得很好,但现在在另一个ViewController中它不起作用(代码是相同的).

覆盖UIAppearance规则在哪里安全?

ios uiappearance

13
推荐指数
1
解决办法
2227
查看次数

来自不同过程的VHDL驱动信号

我对以下VHDL代码有一点问题:

process (zbroji)
begin
    if rising_edge(zbroji) then
        oduzima <= '0';
        ucitanPrvi <= '1';
        broj1 <= ulaz_broj;
    end if;
end process;

process (oduzmi)
begin
    if rising_edge(oduzmi) then
        oduzima <= '1';
        ucitanPrvi <= '1';
        broj1 <= ulaz_broj;
    end if;

end process;
Run Code Online (Sandbox Code Playgroud)

问题是信号ucitanPrvi总是有值X.如果我不尝试在两个进程中设置它的值,那么我没有任何问题...所以我知道我不能从多个进程驱动一个信号,但我不知道如何以不同的方式写这个...有谁知道如何解决这个问题?

谢谢 !

编辑:谢谢大家回复:)现在我明白为什么我不能从多个进程驱动一个信号(至少在我希望它工作的方式).

vhdl

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

Qt单元测试设置

我已经使用Qt一段时间了......而且我决定开始使用单元测试(或至少尝试).但我不知道从哪里开始...我已经读过这个:http: //doc.qt.io/qt-5/qttest-index.html并了解如何使用QtTest类.但是其他任何我不明白的事情......测试应该和我的实际项目在同一个项目中吗?或者也许在单独的项目中?或许在许多分离的项目?如果是这样,分离它们的标准是什么?

当我写一些单元测试时,我该如何使用它们?我的意思是,我会编译它们,但那么呢?我刚刚运行了可执行文件?我是否需要单独编译我​​的项目或以某种方式将其包含在QtTest中?我可以自动执行该过程,因此我的所有单元测试都将自动运行吗?

哇...那是很多问题:)你能给我链接到一些教程,其中这些(我猜基本的)事情都包括在内吗?

qt unit-testing

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

Windows在不同的线程中处理CTRL + C?

这是一个在linux和windows上处理CTRL + C信号亭的简单应用程序:

#include <QtCore/QCoreApplication>
#include <QDebug>
#include <QThread>

void SigIntHandler()
{
    qDebug()<<"SigInt ThreadID: "<<QThread::currentThreadId();
    qApp->quit();
}

#ifdef __linux__
#include <signal.h>

    void unix_handler(int s)
    {
        //svakako je SIGINT, ali da ne javlja warning da se s ne koristi
        if (s==SIGINT)
            SigIntHandler();
    }

#else
#include <windows.h>

    BOOL WINAPI WinHandler(DWORD CEvent)
    {
        switch(CEvent)
        {
        case CTRL_C_EVENT:
            SigIntHandler();
            break;
        }
        return TRUE;
    }

#endif

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);


    //kod za hvatanje CTRL+C - unix i windows
    #ifdef __linux__ …
Run Code Online (Sandbox Code Playgroud)

c++ windows qt multithreading signals

7
推荐指数
2
解决办法
2602
查看次数