1. 程式人生 > >(27)uniGUI for C++ builder之雜七雜八小知識

(27)uniGUI for C++ builder之雜七雜八小知識

                                                                                          (中行雷威2018.9.30)

(同一個世界,同一個夢想,交流學習C++Builder XE10,傳承c++builder的魅力!歡迎各地朋友加入我的QQ群484979943,進群密碼“BCB”,同時也請將該群號廣為宣傳,希望能夠廣集各方高手,共同進步。如需下載開發工具及原始碼請加入我的QQ群。)

【閱讀倡議】

1、有問題請留言;

2、沒問題請點贊;

3、看連載請加群;

4、下原始碼請加群;

【開發工具】

1、C++Builder10.2.3 tokyo

2、FMSoft_uniGUI_Complete_Professional_1.10.0build1471(正版)

一、程式圖示設定

1、如何設定編譯出來的可執行檔案的圖示

開發環境IDE主選單:Project->Options->Application->Application Icon Settings,選擇一個圖示吧。

2、如何設定uniGUI程式最小化到右下角的圖示

設定ServerModule的Favicon屬性

二、瀏覽器相關

1、瀏覽器開啟一個URL

UniSession->AddJS("window.open(\""+UniEdit4->Text+"\",\"newwindow\")");

其中UniEdit4->Text為一個完整的URL變數,如http://www.sina.com.cn

2、設定按鈕或相應控制元件的Ext事件屬性

比如UniBitBtn,開啟屬性ClientEvents->ExtEvents,找到Ext.button.Button的click屬性,雙擊後新增程式碼如下

function click(sender, e, eOpts)
{
  window.open("http://www.sohu.com");//url必須是帶有http頭的完整的地址
}

然後勾選綠色小勾儲存即可。

三、表格相關

1、設定列寬

UniDBGrid1->Columns->Items[0]->Width=150;
2、設定列提示

UniDBGrid1->Columns->Items[0]->ShowToolTip=true;//如果列寬顯示不下內容時,滑鼠焦點後可彈窗顯示

四、視窗樣式

1、設定視窗模式還是頁面模式

ServerModule的MainFormDisplayMode=mfWindow/mfPage(視窗或頁面樣式)

五、各種Panel面板

1、UniHiddenPanel隱藏面板

放在它上面的控制元件在執行時時看不到的。

2、UniPanel增加背景圖

在視窗的OnCreate事件中增加js呼叫,背景圖片檔案要放在執行程式同級目錄的files/images下。

void __fastcall TMainForm::UniFormCreate(TObject *Sender)
{
UniPanel1->JSInterface->JSAddListener("afterrender", UniPanel1->JSInterface->JSFunction("sender","sender.body.dom.style.backgroundImage=\"url(files/images/2018-10-07_080354.png)\";"));
}
//---------------------------------------------------------------------------
 

六、文件上傳與下載

1、下載文件

UniSession->SendFile(UniServerModule()->FilesFolderPath+filePathName);

web預設文件主目錄在執行程式同級目錄下的files子目錄下,該屬性可以在ServerModule的FilesFolder屬性中配置。

對於常見的文件型別,瀏覽器預設支援,對於如abc副檔名的特殊類文件,點選後瀏覽器會沒有動作,你需要配置一下MIME表。

在ServerModule的OnCreate屬性中新增:

MimeTable.AddMimeType("abc","abc");

七、UniTreeView

1、修改節點圖示大小

UniTreeView關聯UniImageList顯示每個節點的小圖,預設小圖較小

1)將UniImageList的width設為32,height設為32,雙擊UniImageList新增32*32的ico圖示

2)新增UniServerModule的CustomCSS屬性

.x-tree-icon {
    width: 32px;
    height: 32px;
    line-height: 32px;
}
.x-tree-elbow-img {
    width: 18px;
    height: 30px;
    line-height: 32px;
}
.x-tree-node-text {
     line-height: 24px;
}