Im Gegensatz zu ::textEdited(const QString &text) triggert textChanged() auch dann, wenn der Text programmatisch (also z.B. per setText()) verändert wird. Bei ::textEdited() triggert es nur, wenn der Anwender den Text im Feld editiert. Der Parameter ist in beiden Fällen der neue, geänderte Text.
fw = new QFileSystemWatches(this);
Die QMAKE_CXXFLAGS werden empfohlen, weil qmake für manche Toolchains (z.B. clang) anscheinend die CONFIG in falsche Flags übersetzt (nämlich -std=c++11). Unklar, für welche Toolchains und bis zu welcher QT Version dieses Problem besteht.
Wenn man händisch verknüpfte slots nutzt, dürfen die Funktionsnamen nicht mit "on_" beginnen, weil der automatische Mechanismus dieses Namensschema nutzt zum erkennen, welche slots verknüpft werden müssen ("on_quellobjekt_signal").
Es besteht sonst die Gefahr, dass Slots mehrfach aufgerufen werden.
Ohnehin ist das händische Verknüpfen per connect(object, signal, zielklasse, funktion); zuverlässiger, weil eine überprüfung zur Compiletime stattfindet. Wenn man z.B. einen Button umbenennt, gibt es sofort beim compilieren einen Fehler - per automatischer Methode ist der Button dann einfach funktionslos, es gibt keine Fehlermeldung.
Falls der QString in der Funktion nicht verändert wird, übergibt man den QString am effizientesten so:
void my_func(QString const& text)
Zum deploy unter Windows habe ich mir eine .bat geschnitzt
Danach finden sich alle benötigten dll etc. im Verzeichnis release
QGeoServiceProvider *provider = new QGeoServiceProvider("osm");
QGeoPositionInfoSource *source =
QListwidget
QFileDialog