Meine private Internet-Präsenz
-
Qt-Standard-Buttons übersetzen
Wenn man QMessageBox::information oder ähnliches benutzt, sind die Standard-Buttons (z.B. QMessageBox::Yes) englisch beschriftet. Die deutsche Bezeichnung erscheint mit folgendem Code in der Main-Schleife: QTranslator qttr; qttr.load(„qt_de“, „.“); a.installTranslator(&qttr); Wichtig ist dann nur noch, dass sich die mit Qt mitgelieferte Datei qt_de.qm im selben Verzeichnis befindet wie die ausführbare Programmdatei (unter Windows erledigt dies das Hilfsprogramm…
-
Qt-Anwendung für iOS kompilieren
Wenn man versucht, eine mit Qt und der Qt Creator-IDE erstelle Anwendung in OSX für iPhone oder iPad zu kompilieren, erhält man folgende (verkürzte) Fehlermeldung beim Start der Anwendung im iOS-Simulator: You are creating QApplication before calling UIApplicationMain. Die Lösung für dieses Problem ist überraschend einfach (getestet mit Qt 5.3.1). Einfach den Code der „Main“-Funktion…
-
Qt: In Android per Touch-Geste scrollen
Wer mit Qt programmiert möchte auch, dass beim Kompilieren für Android die Touch-Gesten aktiviert werden – um zum Beispiel in einem Textfeld auf dem Tablet scrollen zu können. Dies erreicht man mit folgendem Programmtext im Konstruktor des Fensters: #include <QScroller> #if defined(Q_OS_ANDROID) QScroller::grabGesture(ui->mtv_plainTextEdit,QScroller::TouchGesture); #endif
-
Qt – Android Smartphone verbinden
Um ein Android-Smartphone zum Testen von Programmen zu verwenden, die mit Qt entwickelt wurden, sind unter Linux folgende Schritte nötig: 1. Erstellen einer Datei /etc/udev/rules.d/51-android.rules mit folgendem Inhalt: SUBSYSTEMS==”usb”, ATTRS{idVendor}==”hersteller_id″, ATTRS{idProduct}==”product_id″, SYMLINK+=”android_adb”, MODE=”0666″, OWNER=”username” Hersteller-ID und Produkt-ID ermittelt man mit Hilfe von lsusb 2. Eingabe folgender Befehele: sudo chmod 644 /etc/udev/rules.d/51-android.rules sudo chown root /etc/udev/rules.d/51-android.rules…
-
Qt – QProcess – mehrfachen Start eines Programms verhindern
In der Qt-Programmierung gibt es die Klasse QProcess zum starten externer Programme. Das Problem: es wird nicht kontrolliert, ob das externe Programm mehrfach gestartet wird oder nicht. Der folgende Beispiel-Code prüft, ob das QProcess-Objekt gestartet ist und verhindert den mehrfachen Start: //avoid multiple starts of external Process (example: special characters map) QProcess p; bool p_started…
-
StarOffice-Dateien öffnen
Man hat ja aus den 1990er-Jahren noch jede Menge Dateien im StarOffice-Format (sdw, sdc) auf dem Rechner. Das war bis LibreOffice 3.6 kein Problem. Doch seit LibreOffice 4.01 werden diese Binärformate nicht mehr unterstützt. Einzige Lösungsmöglichkeit: In einer virtuellen Maschine ein altes LibreOffice 3.6 installieren und dann mit Datei – Assistenten – Umwandeln im neuen…
-
Firefox gegen Google abdichten
Auch im freien Browser Firefox hat sich die Datenkrake Google tief eingenistet. Deshalb hier 3 Tipps, um seine Daten ein bisschen besser vor dem Zugriff von Google und Geheimdiensten zu schützen. In der Schumaschinenverwaltung „Startpage“ installieren und zur Standard-Suchmaschine machen (gibt’s über die AddOn-Suche von Firefox). In der Konfiguration von Firefox (about:config) das „Safe Browsing“…
-
Nicht erschrecken, wenn das RAID nicht funktioniert
Meine Daten sichere ich auf zwei externen Festplatten, die ich zu einem RAID1 verbunden habe. und bevor ich das RAID mounte prüfe ich routinemäßig mit dem Befehl # mdadm –detail /dev/md0 dessen Zustand. Neulich bekam ich dabei einen gewaltigen Schreck, denn unter anderem erhielt ich folgende Meldung: Update Time : Wed May 1 16:22:57 2013…
-
Android Handys unter Linux einbinden
Android-Handys können am USB-Anschluss als so genanntes MTP-Gerät angeschlossen werden. Um auf dieses Dateisystem zugreifen zu können, ist es nötig, die libmtp und die mtp-tools zu installieren. Danach kann dann das Gerät mit folgendem Befehl eingehängt werden: sudo mtpfs -o allow_other /mnt Das Aushängen geschieht mit fusermount -u /mnt
-
VMwarePlayer: vmnet-Modul kompiliert nicht
Nach einem Update des VMware Players (bei mir auf 4.0.4) kompiliert unter 3.2.-Linux-Kerneln nicht. Unter Linux Mint / Ubuntu hilft dann folgendes: Diesen Patch herunterladen. Entpacken und die Datei patch-modules_3.2.0.sh mit einem Editor öffnen. In Zeile 8 dann die richtige VMware Player Version eintragen (bei mir statt 4.0.2 also 4.0.4) und speichern. Danach sudo ./patch-modules_3.2.0.sh…