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.
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
QT etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
QT etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
6 Aralık 2012 Perşembe
22 Ocak 2012 Pazar
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ı
9 Haziran 2010 Çarşamba
QT ile ilk oluşturulan sınıfların yapısı
C++ Hataları
non-aggregate type
* typical error message
../src/CBNT_Truth.cxx:720: request for member `pdg_id' in `thePart', which is of non-aggregate type `const HepMC::GenParticle*'
* cause : trying to use a pointer as the real object
* solution : replace the "." by an "->"
non-pointer type
* typical error message (a bit clearer than in previous case)
../src/CBNT_Truth.cxx:721: base operand of `->' has non-pointer type `TruthStab'
* cause : trying to use a real object as a pointer
* solution : replace the "->" by a "."
21 Mayıs 2010 Cuma
QT Creator ile derleyebilmek için sistem ayarları
Bana benden notlar
Sistem ayarlarında değişiklikler ile derleyici düzün çalıştırabilmek. Aşağıdaki resimde otomatik olarak QT derleyici dosyaları taranıyor ve bulunuyor. Bunun için resmin altındaki yönergeleri izle.
Go to control Panel/System/Advanced/Environment Variables and make sure you have defined environment for QT:
QTDIR as C:\Qt\2010.02\qt
MINGW as C:\Qt\2010.02\mingw
PATH as C:\Qt\2010.02\qt\bin; C:\Qt\2010.02\mingw\bin;
Kaydol:
Kayıtlar (Atom)