Qt¶
Qt bir özgür grafik araç setidir. C++ ile yazılmıştır ve uyumlu programlama dilleri ile kullanılabilir.
Örneğin aşağıda bir basit bir Qt C++ kodu örneği verilmiştir.
#include <QApplication>
#include <QPushButton>
int main(int argc, char *argv[]) {
// Qapplication oluştur
QApplication a(argc, argv);
// Bir button oluştur
QPushButton button ("Hello world!");
// Bu button nesnesini göster
button.show();
// Uygulamayı başlat
return a.exec();
}
Uygulama derleme¶
Qt uygulamalarını derlemek için ise qmake adı verilen bir derleme talimatından faydalanılır.
QT += core gui
greaterThan(QT_MAJOR_VERSION, 6): QT += widgets
TARGET = helloworld
TEMPLATE = app
SOURCES += main.cpp
Bu dosyayı hello.pro şeklinde kaydedip şu şekilde derleyebiliriz.
$ qmake
$ make
Ayrıca qmake yerine şu şekilde elle derlememiz de mümkündür.
$ g++ main.cpp -c `pkg-config --cflags Qt6Core Qt6Gui Qt6Widgets`
$ g++ -o main main.o `pkg-config --libs Qt6Core Qt6Gui Qt6Widget`
QT_QPA_PLATFORM¶
Qt uygulamaları varsayılan olarak X11 veya Wayland üzerinde hangisi ile çalışıyorsa ona uygun şekilde pencere oluşturur. Eğer Wayland kullanıyorsanız ve uygulamalın Xwayland ile çalışmasını istiyorsanız aşağıdaki gibi değişken ayarlayabilirsiniz.
# önce xcb eğer kullanılabilir değilse wayland ayarlamak için
$ export QT_QPA_PLATFORM=xcb;wayland
$ ./main
# alternatif olarak şu da geçerli olur.
$ ./main -platform xcb;wayland
Ayrıca Qt uygulamalarını X11 veya Wayland yerine doğrudan framebuffer üzerinde çalıştırmak da mümkündür. Bunun için linuxfb olarak başlatmalısınız.
$ QT_QPA_PLATFORM=linuxfb ./main
Temalama¶
Qt uygulamasının gtk ile aynı temayı kullanması için aşağıdaki çevresel değişkeni kullanabilirsiniz:
$ export QT_QPA_PLATFORMTHEME=gtk3