1. 程式人生 > >合理的佈局,絢麗的樣式,談談Winform程式的介面設計

合理的佈局,絢麗的樣式,談談Winform程式的介面設計

從事Winform開發很多年了,由於專案的需要,設計過各種各樣的介面效果。一般來說,運用傳統的介面控制元件元素,合理設計佈局,能夠設計出比較中規中矩的標準介面;利用一些換膚的控制元件或者部分介面元件,能夠設計出相對好看一些的介面效果,如以前很盛行的ActiveSkin、IrisSkin和DotNetSkin等,這些能夠對傳統的介面元素進行換膚,確實比標準灰色的介面控制元件好看了很多。不過隨著介面控制元件的元件發展,目前一般傾向於是用較為大型的控制元件組,他們除了提供設計得體的介面控制元件外,還提供了非常多種絢麗多彩的介面樣式供選擇,如DotNetBar、netadvantage、DevExpress等大型介面控制元件組。

無論介面設計如何變化,一般基本原則都是為客戶提供直觀、易用、體驗效果較好的介面效果哦,從Office的發展歷程我們也可以看到整體的介面效果趨向,從開始的標準控制元件到目前的Ribbon窗體,從單色調變化到絢麗多彩的介面樣式,都給我們提供很好的介面設計參考,大型的介面元件也是模仿這一趨勢。言歸正傳,我們來談談詳細一點的東西,目前我趨向於採用一種基於Ribbon樣式的介面,以及一種基於傳統介面結合OutLook樣式的介面設計。

 一、基於Ribbon樣式的介面

 

 以上的介面樣式,是一種比較大氣、符合Office介面效果的介面佈局,通過把不同的功能塊集中在不同的面板上顯示,確實簡潔、美觀很多,本文不重複介紹該介面效果的優劣,我們主要來集中看看下面的另外一種介面效果。

二、基於OutLook樣式的介面設計

其實OutLook樣式很早就有,也可以在很多公開的控制元件組中看到,如果僅僅是追求部分的OutLook介面效果,而不是整體性的方案,那麼CodeProject上的這款開源Outlook元件,估計是其中的佼佼者(http://www.codeproject.com/Articles/43181/A-Serious-Outlook-Style-Navigation-Pane-Control)。不過由於需求的是整體性效果,而且還要考慮更多控制元件介面樣式的一致性及美觀性,因此我們還是基於DevExpress介面組來設計這樣的OutLook介面效果,會顯得更加美觀大方一點。介面效果如下所示。

以上通過把一個系統很多相關的功能模組放到一顆樹上進行分類展示,對於一個比較複雜的人力資源管理系統或者其他複雜功能的系統,也是一個比較合理的佈局方式,另外OutLook工具條還是可以隱藏起來,節省右邊多文件介面的資料展示空間,這樣整體還是比較合理及美觀的。其中右邊的佈局,還可以通過SplitContainer方式把它分成多個模組,然後客戶想哪個資料顯示面板大一點,拖動一下就可以了,這樣不至於資料比較多的時候,導致顯示佈局不好的情況。下面我們來介紹下如何實現以上的介面佈局效果。

1、建立一個基於DevExpress.XtraEditors.XtraForm基類的窗體。如下程式碼所示

複製程式碼
public partial class MainForm : DevExpress.XtraEditors.XtraForm
    {
        public MainForm()
        {
            InitializeComponent();
        }
    }
複製程式碼

2、在介面設計中,在DevExpress工具箱Navigation & Layout裡面拖動新增一個BarManager控制元件到窗體中,並刪除預設的工具欄Tools,並新增一些選單項和狀態條資料。如下所示。

3、新增PanelControl和NavBarControl,新增一些測試功能按鈕。

由於我們需要使用MDI多文件介面效果,因此先設定Mainform的IsMdiContainer屬性為True。

然後新增一個PanelControl,設定其Dock為Top佈局,為該控制元件ContentImage設定一個背景圖片(事先用PS設計好,儲存為png格式即可),新增幾個小Lable,設定其的圖片和文字。

最後拖入一個NavBarControl控制元件到介面中,設定其Dock為Left佈局,通過控制元件的右鍵選單上的“Run Designer"進入設計介面,先隨便新增一些NavBarGroup和NavBarItem專案,粗略設定得到介面效果如下所示。

注意,在NavBarcontrol裡面,預設是沒有一個Panel可以新增一些特殊的控制元件,如樹、按鈕等,預設只有BarItem物件可以新增進入。為了在一個NavBarGroup裡面新增這樣的控制元件,需要修改NavBarGroup的屬性才行,如下所示。

4、新增DockManager和XtraTabbedMdiManager 控制元件實現多文件佈局,其最終將以Tab方式進行展現。

繼續在上面的窗體中新增DockManager控制元件和XTraTabbedMdiManager控制元件,這兩個控制元件可以實現在右邊以Tab方式展現多文件佈局,這樣對使用者操作來說,可以一次性開啟多個窗體進行操作,方便很多,也必將美觀,是一種常見的佈局展現。為了在窗體啟用的時候,在頂部顯示關閉按鈕,其他的不顯示,那麼需要設定XTraTabbedMdiManager控制元件的ClosePageButtonShowMode=InActiveTabPageHeader即可實現了。最終Tab效果如下所示。 

以上就是我設計的一個系統介面的具體操作流程,其實很多時候,介紹總是很快,摸索總是很慢,這個就是知識積累的效率提升。當然,要設計好一個系統介面,除了考慮介面的佈局美觀性、還要考慮圖示的協調性、還有就是整體的框架,要可以比較好的適應這些佈局控制元件的操作,不能太過臃腫或者難以閱讀。

相關推薦

合理佈局絢麗樣式談談Winform程式介面設計

從事Winform開發很多年了,由於專案的需要,設計過各種各樣的介面效果。一般來說,運用傳統的介面控制元件元素,合理設計佈局,能夠設計出比較中規中矩的標準介面;利用一些換膚的控制元件或者部分介面元件,能夠設計出相對好看一些的介面效果,如以前很盛行的ActiveSkin、IrisSkin和DotNetSkin等

程式實現:TabBar,卡片佈局箭頭樣式頭像星星評分,視訊筆記練習

 底部選項卡TabBar ------------>app.json { "pages":[ "pages/index/index", "pages/me

bootstrap的佈局排版樣式列表樣式表格樣式

佈局容器bootstrap 它認為每一個網頁都應該會擁有固定的寬度,它會在容器裡面水平垂直居中或者是佔滿容器的100% 的寬度。Bootstrap 將全域性 font-size 設定為 14px ,行高

JS最原始封裝素數創建表格改變樣式顏色等

click round head etc http order wid highlight arp <style> table{ border-collapse: collapse; } th,td{ b

H5C3--background中cover背景樣式提升響應區域+精靈圖的使用

content post margin mage spl 其它 16px back border 一.cover的使用 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4

c# Winform登陸介面設計登陸使用者不同許可權設定

要求:登陸介面,使用者只有管理員和普通使用者           管理員可以進行資料庫的增、刪、改、查;         

398day(overflowvertical滑鼠樣式輪廓精靈圖)

《2018年11月5日》【連續398天】 標題:overflow,vertical,滑鼠樣式,輪廓,精靈圖; 內容: /*overflow: visible / auto / hidden / scroll */ /*cursor: pointer/text/move/defaul

03css初步(行間樣式內部樣式外部樣式

CSS (Cascading Style Sheets)層疊樣式表 1.行間樣式 <div style="width:300px;height:200px;background:red;">

使用NPOI 匯出EXCEL設定樣式字型等

  MemoryStream ms = new MemoryStream();   XSSFWorkbook workbook = new XSSFWorkbook();//建立Workbook物件             for (int i = 0; i < l

通過iframe引入另外一個專案中的html片段到專案中解決樣式高度相容等問題的策略

<!--尾部開始--> <iframe src="http://172.16.24.11:9000/cartoon-web/footer_new"    marginheight=

解決VS在高DPI下設計出的Winform程式介面變形問題

在目前高分屏流行的情況下,windows縮放與佈局仍然設定為100%就顯得太小(特別是筆記本),通常會調整為125%或150%, VS在縮放與佈局設定為非100%的時候,就會自動啟動DPI感知模式,以防止VS介面模糊。 但也會導致一個問題 就是在高DPI下(非100%縮放與佈局)設計的winform程式 當拿

微信小程式介面設計入門課程-樣式wxss中使用css課程-背景 background-color 使用教程

語法 CSS 允許應用純色作為背景,也允許使用背景影象建立相當複雜的效果。 可以使用 background-color 屬性為元素設定背景色。這個屬性接受任何合法的顏色值。 這條規則把元素的背景設定為灰色: p {background-color: gray;}

微信小程式介面設計入門課程-樣式wxss中使用css課程-文字-word-wrap

樣式wxss中使用css課程-文字-word-wrap 基礎用法 word-wrap 屬性允許長單詞或 URL 地址換行到下一行。 word-wrap: normal | break-word 值 描述 normal 只在允許的斷字點換行(瀏覽器保持預設處理)。 break-wo

合理的布局絢麗樣式談談Winform程序的界面設計

利用 -o 資源 添加 工具欄 abp 最終 res 整體 轉載,不錯的學習文章 閱讀後,起初不太明白,試驗了幾次後明白了dev的強大。從事Winform開發很多年了,由於項目的需要,設計過各種各樣的界面效果。一般來說,運用傳統的界面控件元素,合理設計布局,能夠設計出比

專案釋出到各個電腦上css樣式都變了jsp頁面佈局亂了怎麼處理

1.在做專案開始的時候,佈局頁面,就應該設定寬高為56%或者?%,而不是具體的780px; 2.做專案的時候儘可能的把公共的樣式放在css裡面。這樣調整的話,只需要調整css樣式而不是把所有的頁面全部開啟,設定一遍; 3.把電腦設定成一樣的解析度如1280*1024 4.選擇一樣的瀏覽器

rem佈局系統字型大小發生變化是頁面樣式錯亂的問題

最近做的一個APP,昨天測試的時候,發現在大多數手機上頁面用rem佈局,都是可以適配的,但是在一些手機上(比如三星A8000,預設字型大小比較大)出現了混亂,看上去像是寬度不夠,有些元素被擠下來,整個頁面被拉伸了一些,後來打印出當前頁面根元素的字型大小,我設定的100px,

HTML 學習筆記(5)樣式區塊佈局表單框架顏色

轉載: HTML 簡介 區塊<div>, <span> 大多數 HTML 元素被定義為塊級元素或內聯元素。 塊級元素在瀏覽器顯示時,通常會以新行來開始(和結束)。 例項: <h1>, <p>, <ul&g

Toolbar自定義樣式別緻的佈局可複用

<?xml version="1.0" encoding="utf-8"?> <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/

談談layer彈窗自定義樣式防止樣式衝突問題(實習第七天)

如果在一個頁面中存在兩個以上的layer彈窗,那麼當我們修改其中一個彈窗的預設樣式的話,其他的彈窗就會受到影響,今天就來談談怎麼樣去避免樣式衝突。 layer自定義彈窗樣式 問題情境:   在一個全域性頁面中存在多個layer.open({});

iOS 主流搜尋介面下的Tag標籤佈局框架,各種樣式任君挑選包您滿意(SKTagView)

每個App的搜尋介面下邊都會有熱門搜尋,歷史搜尋之類的標籤,這裡介紹個框架,既可以非常容易實現標籤類的不規則流式佈局,也可以實現固定寬度和高度的佈局,也支援Autolayout,使用起來也是非常舒服。SKTagView原框架下只有根據文字寬度不固定的的模式,那麼如果需求有固定