【Qt】Help System


【目的】

  • Help 文件的實現。

【資料】
在 Qt Quarterly 的 Issue 28 提供如何實現 Qt 使用者幫助文件(Help System)的範例。
此範例程也提供了一個框架,幫助我們直接套換成我們所需要的功能。
先看一下執行結果會比較有概念

  1. 使用 Help | Help Contents 來呼叫說明文件。
    image
  2. 執行結果類似 .chm 文件。 左邊的就是目錄。右邊的就是說明文件的內容。
    image 

【步驟】

說明文件的實現方式,主要是先透過 HTML 格式來編輯所有的說明文件,
並利用 Qt 所提供的工具來將所有的說明文件壓縮文件成單一個檔案,方便散播。

  1. 輸入檔案 ( 在 simpletextviewer\documentation 底下 )
    1. images 目錄下的圖形檔
      1. browse.png
      2. fadedfilemenu.png
      3. filedialog.png
      4. mainwindow.png
      5. open.png
      6. wildcard.png
      7. handbook.png (22x22) handbook
      8. icon.png (128x128)  icon
    2. about.txt
    3. HTML files,這就是說明文件的原始雛形。
      1. browse.html
      2. filedialog.html
      3. findfile.html
      4. index.html
      5. intro.html
      6. openfile.html
      7. wildcardmatching.html
    4. 指引檔
      1. simpletextviewer.qhp (Qt help project)
      2. simpletextviewer.qhcp (Qt help collection project file)
  2. 預計輸出檔案
    1. simpletextviewer.qch (Qt compressed help file)
    2. simpletextviewer.qhc ( Qt binary collection file)
  3. 指令
    qph 與 qhcp 都是 xml 格式文件,內容說明請直接參考該範例。
    為了避免環境變數的問題,建議使用 Qt Command Prompt 進行以下動作
    image
    1. 由 qph(Qt help project) 產生 qch(Qt compressed help file) 並註冊
      qhelpgenerator simpletextviewer.qhp -o simpletextviewer.qch
      assistant -register simpletextviewer.qch
    2. 由 qhcp (Qt help collection project file) 產生 qhc (Qt binary collection file)
      qcollectiongenerator simpletextviewer.qhcp -o simpletextviewer.qhc
    3. 透過 assistant 先行驗證
      assistant -collectionFile simpletextviewer.qhc
    1. 和程式整合 ( TBD,個人感覺 Q t官方所提供的這種方式有點煩鎖,基本上我所想要的Help文件只需要有一個HTML頁面來介紹程式所有功能與其他多語系頁面即可,所以目前只是先將官方作法留個記錄)
      )

    【注意】

    1. simpletextviewer.qhcp 裡面的內容有幾個重點
      <?xml version="1.0" encoding="UTF-8"?>
      <QHelpCollectionProject version="1.0">
          <assistant>
              <title>Simple Text Viewer</title>
              <applicationIcon>images/handbook.png</applicationIcon>
              <cacheDirectory>Trolltech/SimpleTextViewer</cacheDirectory>
              <startPage>qthelp://com.trolltech.examples.simpletextviewer/doc/index.html</startPage>
              <aboutMenuText>
                  <text>About Simple Text Viewer</text>
              </aboutMenuText>
              <aboutDialog>
                  <file>about.txt</file>
                  <icon>images/icon.png</icon>
              </aboutDialog>
              ...
          </assistant>
          <docFiles>
              <generate>
                  <file>
                      <input>simpletextviewer.qhp</input>
                      <output>simpletextviewer.qch</output>
                  </file>
              </generate>
              <register>
                  <file>simpletextviewer.qch</file>
              </register>
          </docFiles>
      </QHelpCollectionProject>
    2. cacheDirectory, Trolltech/SimpleTextViewer
      如果發現更改完 HTML 檔案重新生程說明文件,但發現沒有更新,可以關注一下這邊。
    3. file, about.txt
    4. icon, icon.png

    【想法】

    1. 由於直接以HTML檔案來當說明文件,這種方式容易做到直接和網路上的說明文件同步。
    2. 但是上面官方本身所提供的方法有些繁鎖(還需編寫 XML 格式的設定檔),我覺得在產品初期也可以直接用 Qt 內建的 QWebView 直接載入 以 HTML 寫好的文件即可。
    3. 上面所提到類似的作法直接參考  Using QTextBrowser as a Simple Help Engine
      (C++ GUI Programming with Qt 4, Second Edition p.353)

    【參考】

    【Qt】Qscreen


    一位高人發現的,先記錄一下,或許可以研究有關GPU的部分。

    【參考】

    1. QT中关于QScreen--blit的理解(已摘抄)
      http://vaqeteart.javaeye.com/blog/611691
    2. Adding an Accelerated Graphics Driver to Qt for Embedded Linux
      http://pepper.troll.no/s60prereleases/doc/qt-embedded-accel.html
    3. QtE程序动态旋转的不完全实现
      http://www.cuteqt.com/blog/?p=1121

    【VE200】外接顯示擴充卡


    VE200 http://www.upmost.com.tw/download_detail.php?fc_id=1&prod_id=483
    使用 USB Port 提供外接延伸螢幕,也可以組成類似電視牆效果。適用於 Win/Mac 。

    【目的】

    • 安裝與使用 VE200 外接顯示擴充卡。

    【步驟】

    • 按一般方式安裝即可,此處無需特別注意。省略。

    【設定】

    • 將螢幕延伸至 左方,請選 延伸至|左(L)
      image

    【注意】

    1. 安裝的時候,在Windows Vista底下會發生下面這種現象。
      ve200-2010-07-19 10 49 30
    2. 雖然是前天(2010/07/17)才在光華買的,不過所附的安裝程式還是去年九月的。
      ve200-2010-07-19 10 49 55
    3. 要解決上面的問題,需要到官方網站下載最新的程式安裝即可。

    【參考】

    1. PC和MAC的USB外接顯示卡 - UPMOST VE100/VE200外接顯示擴充卡
      http://5i01.com/topicdetail.php?f=298&t=1335857
     

    Ed32. Copyright 2008 All Rights Reserved Revolution Two Church theme by Brian Gardner Converted into Blogger Template by Bloganol dot com