Qt — Простые примеры

Простые примеры по работе с Qt. Запись будет обновляться и дополняться.


Есть в Qt аналог Application.ProcessMessages из Delphi или Application.DoEvents из .NET?
QApplication::processEvents();


Как узнать каталог программы?
QApplication::applicationDirPath() — Каталог программы
QApplication::applicationFilePath() — Полный путь до файла


Как разобрать путь до файла?
Воспользоваться QFileInfo. Пример:

    QFileInfo inf("c:Windowsnotepad.exe");
    QStringList sl;
    sl.append(inf.absoluteFilePath());  // C:/Windows/notepad.exe
    sl.append(inf.absolutePath());      // C:/Windows
    sl.append(inf.fileName());          // notepad.exe
    sl.append(inf.baseName());          // notepad
    sl.append(inf.suffix());            // .exe


Как создать каталог если его нету?

#include <QDir>
...
if(!QDir("temp").exists())
    QDir().mkdir("temp");


Как запустить внешнее приложение

QProcess process;
QStringList param;
param << "C:autoexec.bat";        // Параметр запуска
process.start("notepad.exe",param); // Запускаем блокнот
process.waitForFinished();          //  ждем закрытия
&#91;/sourcecode&#93;

<a name="QStringToChar"></a>
<strong>Перевести QString в char* ?</strong>

QString str = "test string";
str.toAscii().data();


Как перевести число (int, double) в QString?
Смотрим статические методы number у QString
QString number ( long n, int base = 10 )
QString number ( ulong n, int base = 10 )
QString number ( int n, int base = 10 )
QString number ( uint n, int base = 10 )
QString number ( double n, char f = ‘g’, int prec = 6 )
Пример:

    QString str = "int: " + QString::number(2012);


Как скопировать в буфер русский текст?

#include <qclipboard.h>
...
QClipboard *cb = QApplication::clipboard();
QString text = QString::fromLocal8Bit("Скопировать текст в буфер") ;
cb->setText(text);

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *