2011-01-06 21 views
8

Derlenmiş ve çalıştırılan Qt Tasarımcısı kullanılarak bir GUI oluşturdum.
Daha sonra GUI'de birkaç değişiklik yaptım ve yeniden derledim ancak GUI aynı kaldı. Ben Clean All ve Clean Project ama hiçbir başarı denedimQt GUI, derlemeden sonra değişmez


Ben widget'lar silin ve göründükleri yeniden derlemek bile ... ...
Ne sorun olabilir?

+0

Güncelleştirilmiş bir .py dosyasını almak için .ui dosyasında pyuic (veya pyuic4) çalıştırmanız gerekebilir. – Apalala

+0

Hangi geliştirme ortamını kullanıyorsunuz? –

+0

QT Creator 2.0.1 kullanıyorum python ... – kaycee

cevap

3

Bunun ne olması gerektiğinin bir özeti olduğunu düşünüyorum.

  • 1. boş bir projeyle başlayın.
  • 2. mainwindow.ui dosyasını oluşturmak için QT tasarımcısını kullanın. 3. qt yaratıcısının sizin için kullanıcı arabiriminiz için gerekli tanımları içeren ui_mainwindow.h bir başlık dosyası ve bir üye işlevi setupUi() oluşturması bekleniyor. QT yaratıcısı bu ui_mainwindow.h dosyasını uic (kullanıcı arabirimi derleyicisi) numaralı telefondan arayarak üretir.
  • 4.Bu dosyanın projenize eklendiğini ve Qt GUI'nizi düzgün bir şekilde görüntüleyeceğini düşündüğümüzü düşünüyorum.
  • GUI'nizi Qt tasarımcısında düzenlemekte ve güncellenmiş değişiklikleri göstermek için yeniden derlemekte özgürsünüz. :))
  • #include "ui_mainwindow.h" 
    #include <QMainWindow.h> 
    #include <QApplication.h> 
    
    int main(int argumentCount, char * argumentValues[]) 
    { 
        QApplication app(argumentCount, argumentValues); 
        Ui::MainWindow ui; 
        QMainWindow * myMainWindow= new QMainWindow(); 
        ui.setupUi(myMainWindow); 
        myMainWindow->show(); 
        return app.exec(); 
    } 
    

    ps: sınıf Ui :: MainWindow üye fonksiyonunu setupUI() sizin için GUI setsup içerir.
    Tam sınıf adına sahip olduğunuzdan, C++ 'nın büyük/küçük harfe duyarlı olduğundan emin olun. İyi şanslar.

    +0

    Ben ui_mainwindow adlı bir .h dosyası doğru değerleri (yeni olanlar) ile oluşturulmuş görebilirsiniz. ama hala çalıştırdığımda - eski tasarım kullanır ... – kaycee

    +0

    Yukarıda belirtilen şekilde ui_mainwindow.h dosyasını kullanmayı deneyin ve çalışıp çalışmadığını görün. –

    6

    UI'nizi aşağıdaki komutla yeniden derleyebilirsiniz. Benim için çalıştı. Kaynak dizininizi temizlemelisiniz

    uic mainwindow.ui>ui_mainwindow.h 
    
    +0

    nerede girilmelidir? – ironic

    +0

    DOS komut satırı. –

    1

    Muhtemelen farklı dizinlerde iki ui_mainwindow.h dosyası var. Komut satırına göre yapınızdan bir dosya, diğeri ise Qt Creator tarafından yapıtınızdan çıkar. Bu benimle oldu ve temizlikten sonra her şey iyi çalışıyor.

    3

    Bunun eski bir iş parçacığı olduğunu biliyorum, ancak sanırım hala aktif. Bu buggy davranışının bir nedeni Gölge oluşturma onay kutusunun etkin olmasıdır. Qt yaratıcısındaki "Proje" simgesine tıklayın, Build-> General altında, Shadow build'in işaretini kaldırın. Yeniden inşa et.