Aklımda Kalası Kelimeler

* давайте работать вместе
* Zarf ve Mazruf, Zerafet(xHoyratlık) ile aynı kökten(za-ra-fe) gelir
* Bedesten
* Suç subuta ermiştir - Suç sabit olmuştur
Signal - Slot etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
Signal - Slot etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

6 Aralık 2012 Perşembe

Q_OBJECT macrosu ne işe yarar?

Bunu izlerken bende kısaca sordum Q_OBJECT sorusunu ve aşağıdaki cevapları aldım.

StackOverflow MOC(Meta-Object Compiler), Qt'un C++ uzantılarıyla başa çıkan, C++ header dosyalarını okuyan, içinde Q_OBJECT makrosu olanlar sınıf tanımlamaları için içinde Meta Object Code içeren C++ kaynak dosyası üreten programdır. Derlemeden az önce çalışır bu MOC. Ve ürettiği bu meta-object kodu SIGNAL & SLOT mekanizması, çalışma zamanı bilgisi ve dinamik özellikler içindir.
StackOverflow Basitçe Q_OBJECT makrosunun bulunduğu bu sınıfın GUI elemanları içerdiğini ve SIGNALS&SLOTS mekanizmasını kullandığını BUILD zamanında belirtir.
StackOverflow C++ derleyicisinin anlayacağı şekilde SIGNALS&SLOTS mekanizmasının çevirilmesini sağlar.

22 Ocak 2012 Pazar

Qt C++ 2 (Signal Slot örneği)

Tasarım zamanında Signal Slot bağlantısı kurmak




Kodla Signal Slot bağlantısı kurmak


Qt C++ 1 (Signal, Slot, Class Yapısı)

QT ile GUI si olan Application'lat oluşturma

QML(ekran tasarımını içeren kodların dosyası(declaratif lang. örneği)) ve C++ kod dosyalarını (runtime çalışacak dosyaları) içeren proje tipi:

QtQuickUI ile ekran tasarımını yaptığınız Declarive desteği ile kodladığınız ortam:




Qt Widget Project ile GUI Application




QWidget Gui App

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>

namespace Ui {
    class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT                                    // Tüm sınıflar Object'ten türemiştir ve bu makro ile sınıfı QObject'e dönüştürür.

  public:                                       // public metotları, değişkenleri yazıyoruz
    explicit MainWindow(QWidget *parent = 0);   // Yapıcı metot
    ~MainWindow();                              // Yıkıcı metot

  private:                                      // private metotları, değişkenleri yazıyoruz
    Ui::MainWindow *ui;                         // Ui namespace içinde MainWindow tipinde ui değişkeni var
}

#endif // MAINWINDOW_H

#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}

MainWindow::~MainWindow()
{
    delete ui;
}

Signal tetikleyici, Slot sonlandırıcı