亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

TreeFrog Framework 開發入門之HelloWorld

系統 2385 0

搭建好 the TreeFrog Framework 的開發環境后,第一時間閱讀了在線文檔,懷著忐忑之心構建了一個 Hello World 。

官方有一個 初級教程 ,可以參考下。這個教程使用 tspawn 這個 generator 來生成工程模版。tspawn 在生成工程時,默認會根據數據庫表來生成 controller 、model 、 view及其他模版化的目錄和資源。

我不想用數據庫,僅僅想快速體驗一下。所以跳過了一個步驟,沒有嚴格按照 初級教程 來做。

我的體驗會分兩步,第一步先跑起來,看看效果。第二步在第一步的基礎上添加一些工程,最終實現一個文件服務器。

首先打開之前創建的 TreeFrog 快捷方式,使用 tspawn 來創建模版工程,執行如下命令 :

    tspawn new fileserver
  
好啦,模板工程構造完成,下圖是 tspawn 生成的目錄結構:

TreeFrog Framework 開發入門之HelloWorld

按照 初級教程 ,需要創建一個數據庫表以便與 Model 關聯起來。我這里跳過了,先進入 fileserver 目錄,再執行下列命令來生成 controller :

    tspawn controller FileServerController
  
現在這個工程已經可以編譯并且運行了:

    qmake -r "CONFIG+=debug"
mingw32-make
treefrogd.exe -e dev
  
試試瀏覽器訪問 http://localhost:8800/fileserver ,會看到一個錯誤頁面 “Page Not Found”。不著急,我們來添加一個 controller 和一個 Action 就可以看到變化了。

當我們訪問http://localhost:8800/ ,默認會調用程序注冊的 controller 的 action :index() ,所以我們要實現這個 action 。

用 Qt Creator 打開 fileserver目錄下的 fileserver.pro 文件,接下來可以添加我們的 controller了。

在 fileserver/controllers 下面添加 fileservercontroller.h/.cpp 兩個文件。操作不贅述,上圖:

TreeFrog Framework 開發入門之HelloWorld

然后是代碼實現。

手動添加 controller ,按照下面的步驟:

  1. 從(框架自動生成的)ApplicationController 派生一個類
  2. 實現一些 public slots 來作為action
  3. 在頭文件中用T_DECLARE_CONTROLLER 宏聲明一個controller
  4. 在實現文件中用T_REGISTER_CONTROLLER 注冊controller

按照上面的步驟,就可以得到下面的源代碼,先是 fileservercontroller.h :

    #ifndef FILESERVERCONTROLLER_H
#define FILESERVERCONTROLLER_H
#include "applicationcontroller.h"

class T_CONTROLLER_EXPORT FileServerController : public ApplicationController
{
    Q_OBJECT
public:
    FileServerController(){}
    FileServerController(const FileServerController &other);

public slots:
    void index();
};

T_DECLARE_CONTROLLER(FileServerController, fileservercontroller);

#endif // FILESERVERCONTROLLER_H
  
再看fileservercontroller.cpp :

    #include "fileservercontroller.h"
FileServerController::FileServerController(const FileServerController &other)
    : ApplicationController()
{}

void FileServerController::index()
{
    renderText("Hello World");
}

T_REGISTER_CONTROLLER(fileservercontroller);
  

OK ,大功告成,可以編譯執行了:

    qmake -r "CONFIG+=debug"
mingw32-make
treefrogd.exe -e dev
  
瀏覽器訪問 http://localhost:8800/fileserver ,激動人心的時刻來啦:屏幕上出現了 "Hello World" 字樣。這正是我們想要的。

如果你想體驗完成的 初級教程 ,可以使用 sqlite 來創建數據庫表,最新的 sqlite 在 這里下載

我們的第一個示例程序結束,這里面提到的 controller 、 action 概念,可以在 TreeFrog 官網 的文檔上查看學習,用到的一些方法,如renderText,來自 TreeFrog Framework,可以參考 在線 API

這個示例僅僅是個玩具,如果想要用 C++ 和 Qt 實現一個有用的 web 程序,還需要進一步研究 the TreeFrog Framework。接下來我會給本示例添加一些內容,實現一個簡單的文件服務器。

TreeFrog Framework 開發入門之HelloWorld


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 中文字幕日韩国产 | 亚洲婷婷综合中文字幕第一页 | 五月婷婷丁香在线视频 | a级毛片高清免费视频 | 中文字幕伦视频 | 日韩在线第三页 | 色老成人精品视频在线观看 | 免费观看一级成人毛片软件 | 狠狠操狠狠干 | 久久久久久极精品久久久 | 日韩欧美中文字幕在线观看 | 国产毛片在线高清视频 | 成人影院高清在线观看免费网站 | 全部精品孕妇色视频在线 | 久久99热精品 | 色综合h| 国产精品线在线精品 | 97dyy在线观看手机版 | 黄色免费看视频 | 国产成人91高清精品免费 | 亚洲精品久久久午夜伊人 | 国产亚洲欧美另类一区二区三区 | 香蕉视频黄网站 | 亚洲成a人v欧美综合天 | 欧美18videosex灌满 | 国产一级黄色录像 | 青青青视频自偷自拍视频1 青青青手机版视频在线观看 | 在线 | 一区二区三区 | 乱人伦精品一区二区 | 色狠狠色综合久久8狠狠色 色狠狠婷婷97 | 最新中文字幕在线播放 | 日本一级毛片私人影院 | 四虎精品在线视频 | 奇米麻豆 | 免费在线中文字幕 | 爱性网| 欧美午夜网 | 色综合久久久久久 | 亚洲精品综合一区二区三区 | 自拍第二页 | 欧美午夜久久 |