1. 程式人生 > 其它 >Java 模板變數替換(字串、佔位符替換)

Java 模板變數替換(字串、佔位符替換)

技術標籤:C#教程c#教程

對UI設計我們應該不陌生了,自己做過幾個小系統,像學生管理系統、機房收費系統等都是客戶端模式,當然還有我們的牛腩新聞釋出系統,這是我們第一次接觸的比較正規的web系統。現在就vb.net的一些UI設計小技巧給大家做個總結,希望對我們的重構或合作都有所幫助吧。

    合作的時候我是負責U層的,所以設計這裡就要儘可能的想到“全心全意為人民服務”。因為使用者使用的時候就是跟頁面互動嘛,對於系統內部的邏輯設計等都不會去了解,這就又說到了UI設計的重要性了,概念性的大家自己去查,這裡只做一些小技巧。

1、提示框

U層的設計少不了提示框,我們可不能在彈出提示框的時候給使用者看到層標題,以下是一些小例項及其對應的程式碼。

程式碼:

MessageBox.Show(“確定要退出程式嗎?”,“提示”, MessageBoxButtons.YesNo, MessageBoxIcon.Question)
效果:

在這裡插入圖片描述

計算機生成了可選文字: 提示O,確走要退出程.序嗎?否(N)

注意事項:

     這裡要說的是,我們一般的提示框是隻有一個“確定”或“是”按鈕,換句話說就是使用者沒有選擇權。但是對於這個退出程式,使用者是要選擇的,這個提示框應該是出現在“Private Sub Form_FormClosing”中的,通過新增if~else~end if來判斷是取消操作還是退出程式關閉窗體。對於我們的vb.net,else中的事件應該是“e.Cancel = True”。

完整程式碼描述:

IfMessageBox.Show(“確定要退出程式嗎?”, “提示”, MessageBoxButtons.YesNo,MessageBoxIcon.Question) = Windows.Forms.DialogResult.Yes Then
’事件
Else
e.Cancel= True
End if
程式碼:
MessageBox.Show(“充值成功!”,“系統提示”, MessageBoxButtons.OK, MessageBoxIcon.Asterisk)
效果:

在這裡插入圖片描述

計算機生成了可選文字: 系統提示一’充靦’一

程式碼:

MessageBox.Show(“請輸入卡號!”,“系統提示”, MessageBoxButtons.OK, MessageBoxIcon.Warning)

效果:
在這裡插入圖片描述

計算機生成了可選文字: 系統提示請輸入卡號!

程式碼:

MessageBox.Show(“該使用者不存在,請重新輸入!”,“系統提示”, MessageBoxButtons.OK, MessageBoxIcon.Error)
效果:

計算機生成了可選文字: 系統提示州O·”戶~,~,刊
在這裡插入圖片描述

當然還有很多型別的,大家可以根據自己的喜好設計,這裡提供一張icon說明表:

計算機生成了可選文字: 成員名稱說明ASterisk該訊息框包含一個符號,該符號是由一個圓圈及其中的,J’寫字母i組成的。Error該訊息框包言一個符號,該符號是由一個紅色背景的圓圈及真中的vb.net教程白色X組成的。Ex〔Iamation該訊息框包含一H日nd該訊息框包含一1nformation該訊息框包含一個符號,該符號是由一個黃色背景的三角形及其中的一個感嘆號組成的.個符號,該符號是由一個紅色背景的圓圈及其中的曰色X組成的.個符號,該符號是由一個圓圈及其中的,J’寫字母c#教程i組成的.NOne訊息框未包含符號.Question該訊息框包含一個符號,該符號是由一個圓圈和其中的一個問號組成的.不再建議使用問號訊息圖示,原因是該圖示無法清楚地表示的訊息,並且問號形式的訊息表述可應用於任何訊息型別。此外,使用者還可能名問號訊息符號與幫助資訊混淆.因此,python基礎教程請不要在訊息框中使用此問號訊息符號.系統繼符號只是為了向後相容Stop該訊息框包含一個符號,該符號是由一個紅色背景的圓圈及其中的白色X組成的。Warning該訊息框包含一個符號,該符號是由一個黃色背景的三角形及真中的一個感嘆號組成的。

2、enter鍵響應

    一個文字框輸入完成,我們可以用enter鍵來響應確定按鈕,要想做的比較完善,就要每一個文字框都寫一個以下這樣一段程式碼,這樣做是非常麻煩的,但是我還沒有想出更好的方法,如果大家有什麼好方法,還希望不吝賜教啊!
''' <summary>
    ''' Enter鍵響應登陸按鈕
    ''' </summary>
    ''' <paramname="sender"></param>
    ''' <paramname="e"></param>
    ''' <remarks></remarks>
    Public Sub txtPassword_KeyUp(ByVal senderAs Object, ByVal e As KeyEventArgs) Handles txtPassword.KeyUp
        'Enter鍵進入
        If e.KeyCode = Keys.Enter Then
            btnOK.PerformClick()
        End If
    End Sub

3、清空、聚焦

    當然還不要忘了我們的清空聚焦啊,清空可以呼叫一個公共方法,如下:
''' <summary>
    ''' 清除文字框的資料
    ''' </summary>
    ''' <param name="frm">當前窗體</param>
    '''<returns>返回布林值,如果為真則清除成功</returns>
    ''' <remarks></remarks>
    Public Function ClearAll(ByVal frm As Form)As Boolean
        Dim control As New Control
 
        For Each control In frm.Controls'遍歷窗體中所有的控制元件
            If TypeOf control Is TextBox Then'判斷控制元件型別,如果是文字框清空
                control.Text = ""
            Else
                If TypeOf control Is ComboBoxThen '判斷控制元件型別,如果是下拉列表清空
                    control.Text = ""
                End If
            End If
        Next
        Return True
    End Function

聚焦當然就簡單了,直接

<span style="font-size:24px;">Text.Focus()</span>

4、控制元件鎖定

如果我們讓一個Text框不可用,直接用屬性Enable=False就噢啦,但是如果整個窗體的text框都鎖定,那一個個來是不是就麻煩多了?同上設計。

 ''' <summary>
    ''' 遍歷窗體中所有控制元件,如果沒有鎖定,則進行鎖定
    ''' </summary>
    ''' <paramname="frm">當前窗體</param>
    '''<returns>返回true鎖定成功,返回false鎖定失敗</returns>
    ''' <remarks></remarks>
    Public Function Locked(ByVal frm As Form)As Boolean
        Dim control As New Control
 
        For Each control In frm.Controls'遍歷窗體中所有的控制元件
            If TypeOf control Is TextBox Then'判斷控制元件型別,如果是文字框
                control.Enabled = False         '鎖定控制元件
            ElseIf TypeOf control Is ComboBoxThen '判斷控制元件型別,如果是組合框
                control.Enabled = False              '鎖定控制元件
            End If
        Next
        Return True
    End Function

5、窗體字型統一

這裡用了一個比較笨vb.net教程的方法,就是在一開始建窗體時就修改了它的字型,這樣往上加控制元件就是一致的了,就是每c#教程建一個新窗體都要修改一次,挺麻煩的,這裡還要請高人指教啊!

其他還有很多,大家有什麼需要python基礎教程歡迎給我來信~