qt

Hello world на Qt 4

Продолжаю тему написания простейших графических приложений на Qt 4...

Прежде всего вам понадобится установить qt4. Я пользуюсь ubuntu, такчто всё будет описано под linux`ом..
Убунтоводам:

sudo apt-get install libqt4-core libqt4-gui libqt4-dev

Если вы пользуетесь другим дистрибутивом linux вы можете скачать эти пакеты и установить их.. Пользователям Windows придётся помучатся немного больше ( http://doc.crossplatform.ru/qt/4.3.2/install-win.html )

Убрать заголовок и системные декорации окна Qt - делаем своё окно

В этой статье речь пойдёт о том, как убрать заголовок окна. Это её первая цель. Побочно убираем ещё тень и границы, которые рисует всё тот же декоратор.
Приступим. Создадим простой hello world в Qt Creator. C этим проблем быть не должно да и писал я уже об этом не однократно.
При создании сгенерируйте простое MainWindow окно, как предлагает creator.
Готово? Отлично. Идём дальше.

Создаём файлы переводов в qt

Хотите создать приложение, доступное на многих языках? Qt - идеальный вариант!
Приступим к созданию простейшего приложения с различными переводами...
Я не хочу углублятся в тонкости, поэтому создам обычное "hello world" приложение. Оно будет состоять из и текстовой метки, которую собственно и будем переводить..

Создайте пустой проект qt, в нём создайте файл main.cpp.
Он имеет такой вид:

Расположим окно Qt по центру экрана

Часто нужно чтобы окно "выскочило" под самым носом пользователя, а не в том месте где это придумалось менеджеру окон.
В Qt есть два основных способа "передвинуть" окно в нужное место.
1. Вычислить координаты центра экрана и переместить окно при помощи метода move:

Запускаем консольное приложение и выводим результат работы в GUI Qt

Частенько нужно написать GUI к уже готовой программе имеющей консольный интерфейс.
В Qt эта задача существенно упрощена. Нам понадобится всего несколько строк кода для вывода результат работы программы в форму.
Итак. Сначала создадим какой нибудь "hello world" и откомпилируем его:

#include <iostream>
using namespace std;

int main(int argc,char **argv) {
    cout << "Hello world!" << endl;
    return 0;    
}

Я использую linux, так что откомпилировал так:

Дадим пользователю определить удобный размер виджета

Заметили, что во многих приложениях пользователя "разрешают" самому изменять размер виджитов. В Qt это можно сделать при помощи QSplitter. Работа с ним очень напоминает работу с QLayout, поэтому вы запросто разберётесь.
Сразу покажу конечный результат: