跳到內容
  • 版面
  • 最新
  • 標籤
  • 熱門
  • 使用者
  • 群組
  • 搜尋
  • Get Qt Extensions
  • Unsolved
Collapse
品牌標誌
  1. 首頁
  2. Qt Development
  3. General and Desktop
  4. Access and inheritance
Forum Updated to NodeBB v4.3 + New Features

Access and inheritance

已排程 已置頂 已鎖定 已移動 Solved General and Desktop
49 貼文 5 Posters 11.8k 瀏覽 4 Watching
  • 從舊到新
  • 從新到舊
  • 最多點贊
回覆
  • 在新貼文中回覆
登入後回覆
此主題已被刪除。只有擁有主題管理權限的使用者可以查看。
  • mrjjM mrjj

    Hi
    It is the list to the right we are after

    The code
    for entries Level 2,3 would help a lot.

    tomyT 離線
    tomyT 離線
    tomy
    寫於 最後由 編輯
    #40

    @mrjj,
    Hi,

    0_1550500483783_1.PNG

    Do you mean I copy and paste code for level 7 and 11 here?
    7 is the project's code but 11 includes thousands of lines of code.

    mrjjM 1 條回覆 最後回覆
    0
    • tomyT tomy

      @mrjj,
      Hi,

      0_1550500483783_1.PNG

      Do you mean I copy and paste code for level 7 and 11 here?
      7 is the project's code but 11 includes thousands of lines of code.

      mrjjM 離線
      mrjjM 離線
      mrjj
      Lifetime Qt Champion
      寫於 最後由 編輯
      #41

      @tomy
      Hi
      The line it shows when you click on 11 ? line 1339

      tomyT 1 條回覆 最後回覆
      1
      • mrjjM mrjj

        @tomy
        Hi
        The line it shows when you click on 11 ? line 1339

        tomyT 離線
        tomyT 離線
        tomy
        寫於 最後由 編輯
        #42

        @mrjj, Hi,

        Here you are:

        0_1550504186993_2.PNG

        1 條回覆 最後回覆
        0
        • mrjjM 離線
          mrjjM 離線
          mrjj
          Lifetime Qt Champion
          寫於 最後由 編輯
          #43

          Hi
          it was not what i as i had hoped, it being inside some of the user code.
          I wonder if you have a double free.
          Did you change anything in main.cpp?

          tomyT 1 條回覆 最後回覆
          0
          • mrjjM mrjj

            Hi
            it was not what i as i had hoped, it being inside some of the user code.
            I wonder if you have a double free.
            Did you change anything in main.cpp?

            tomyT 離線
            tomyT 離線
            tomy
            寫於 最後由 tomy 編輯
            #44

            @mrjj Hi,

            Here is main.cpp:

            #include "myspreadsheet.h"
            #include <QApplication>
            #include <QSplashScreen>
            
            int main(int argc, char *argv[])
            {
                QApplication app(argc, argv);
            
                QSplashScreen* splash = new QSplashScreen;
                splash->setPixmap(QPixmap(":/images/splash.jpg"));
                splash->show();
            
                Qt::Alignment topRight = Qt::AlignRight | Qt::AlignTop;
                splash->showMessage(QObject::tr("Setting up the main window..."), topRight, Qt::white);
            
            
                MySpreadsheet* mySP = new MySpreadsheet;
                if(argc > 1)
                    mySP -> loadFile(argv[1]);
            
                mySP -> show();
                splash -> finish(mySP);
                delete splash;
            
                return app.exec();
            }
            

            I added those splash stuff and now apparently it's fine!

            1 條回覆 最後回覆
            0
            • mrjjM 離線
              mrjjM 離線
              mrjj
              Lifetime Qt Champion
              寫於 最後由 編輯
              #45

              Hi
              Does look fine.
              Try set breakpoint in main.cpp and press f10 to signle step over it and
              see if we can find the reason for the crash.
              Since its first on close, it might be inside MySpreadsheet indirectly.

              tomyT 1 條回覆 最後回覆
              1
              • mrjjM mrjj

                Hi
                Does look fine.
                Try set breakpoint in main.cpp and press f10 to signle step over it and
                see if we can find the reason for the crash.
                Since its first on close, it might be inside MySpreadsheet indirectly.

                tomyT 離線
                tomyT 離線
                tomy
                寫於 最後由 編輯
                #46

                @mrjj
                Hi, It's fine now. :) Thanks so much. :)

                mrjjM 1 條回覆 最後回覆
                1
                • tomyT tomy

                  @mrjj
                  Hi, It's fine now. :) Thanks so much. :)

                  mrjjM 離線
                  mrjjM 離線
                  mrjj
                  Lifetime Qt Champion
                  寫於 最後由 編輯
                  #47

                  @tomy
                  Hi
                  What was it ? Just to learn also.

                  tomyT 1 條回覆 最後回覆
                  0
                  • mrjjM mrjj

                    @tomy
                    Hi
                    What was it ? Just to learn also.

                    tomyT 離線
                    tomyT 離線
                    tomy
                    寫於 最後由 編輯
                    #48

                    @mrjj Hi,

                    The faulty one didn't include splash stuff and was this way I think:

                    #include "myspreadsheet.h"
                    #include <QApplication>
                    
                    int main(int argc, char *argv[])
                    {
                        QApplication app(argc, argv);
                        MySpreadsheet* mySP = new MySpreadsheet;
                        mySP -> show();
                    
                        return app.exec();
                    }
                    

                    Then I added the splash stuff. Now it "apparently" is fine, but I'm still not sure not do I know of the exact reason for that red message either. :(

                    1 條回覆 最後回覆
                    1
                    • SGaistS 離線
                      SGaistS 離線
                      SGaist
                      Lifetime Qt Champion
                      寫於 最後由 編輯
                      #49

                      You are not deleting mySP. The memory will be cleaned up at the end of the application but this doesn't mean that the destructor will be called. So if you have anything there that does something it's not guaranteed to be called.

                      You should rather keep it on the stack or delete it after returning from app.exec();

                      Interested in AI ? www.idiap.ch
                      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

                      1 條回覆 最後回覆
                      3

                      • 登入

                      • Login or register to search.
                      • 第一個貼文
                        最後的貼文
                      0
                      • 版面
                      • 最新
                      • 標籤
                      • 熱門
                      • 使用者
                      • 群組
                      • 搜尋
                      • Get Qt Extensions
                      • Unsolved