熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

VB.net2008打造精美電子日歷程序

2013-11-13 10:14:40  來源: .NET編程 

  Visual Studio發布後迅速吸引了大量的VBNET愛好者Visual Studio以優化性和強大的功能而著稱所以一時間同樣也吸引了大量的專業編程人員經過人們幾個月的試用後可以發現使用者普遍對這個新版本的Visual Studio感到滿意當然Visual Studio最為突出的特點是快捷而更具有人性化了如今的Visual Studio的控件應用仍然相當重要而且很實用今天我將要介紹幾個比較常用的控件和它們的相關屬性通過一個實例讓大家詳細的了解程序的基本開發過程與控件使用技巧本文適合初學者和具備一定基礎的使用者讀者將在本文學習到GroupBox DateTimePickerComboBoxTextboxLabelMonthCalendarCheckBox等控件的使用以及對於 Windows窗體設計器的操作和方法的簡單介紹

  打開 Visual Studio 在文件 (File) 菜單上單擊新建項目 (New Project) 在新建項目 (New Project) 對話框的模板 (Templates) 窗格中單擊 Windows 應用程序(Windows Application)單擊確定 (OK)

  在Form窗體靠右側中添加GroupBoxGroupBox控件(注意GroupBox創建在GroupBox上)其中GroupBox的Text為: 時間日期GroupBox的Text為:選項如圖所示

   用2008編寫精美電子日歷

  完成後我們需要在GroupBox中添加DateTimePicker控件

  DateTimePicker控件詳細屬性解釋  

  DateTimePicker控件屬性  

  CalendarFont 獲取或設置應用於日歷的字體樣式

   CalendarForeColor 獲取或設置日歷的前景色

   CalendarmonthBackground 獲取或設置歷月的背景色

   CalendarTitleBackColor 獲取或設置日歷標題的背景色

   CalendarTitleForeColor 獲取或設置日歷標題的前景色

   CalendarTrailingForeColor 獲取或設置日歷結尾日期的前景色

   CanFocus 獲取一個值該值指示控件是否可以接收焦點 (從 Control 繼承) CanSelect 獲取一個值該值指示是否可以選中控件 (從 Control 繼承

   Capture 獲取或設置一個值該值指示控件是否已捕獲鼠標 (從 Control 繼承) CausesValidation 獲取或設置一個值該值指示控件是否會引起在任何需要在接收焦點時執行驗證的控件上執行驗證 (從 Control 繼承

   Checked 獲取或設置一個值該值指示是否已用有效日期/時間值設置了 Value 屬性且顯示的值可以更新

   CheckForIllegalCrossThreadCalls 獲取或設置一個值該值指示是否捕獲對錯誤線程的調用這些調用訪問控件的 Handle 屬性 (從 Control 繼承

   ClientRectangle 獲取表示控件的工作區的矩形 (從 Control 繼承

   ClientSize 獲取或設置控件的工作區的高度和寬度 (從 Control 繼承

   CompanyName 獲取包含控件的應用程序的公司名稱或創建者 (從 Control 繼承) Container 獲取 IContainer它包含 Component (從 Component 繼承

   ContainsFocus 獲取一個值該值指示控件或它的一個子控件當前是否有輸入焦點(從 Control 繼承

   ContextMenu 獲取或設置與控件關聯的快捷菜單 (從 Control 繼承

   ContextMenuStrip 獲取或設置與此控件關聯的 ContextMenuStrip (從 Control 繼承

   Controls 獲取包含在控件內的控件的集合 (從 Control 繼承

   Created 獲取一個值該值指示控件是否已經創建 (從 Control 繼承

   Cursor 獲取或設置當鼠標指針位於控件上時顯示的光標 (從 Control 繼承

   CustomFormat 獲取或設置自定義日期/時間格式字符串

   DataBindings 為該控件獲取數據綁定 (從 Control 繼承

   DefaultBackColor 獲取控件的默認背景色 (從 Control 繼承

   DefaultFont 獲取控件的默認字體 (從 Control 繼承

   DefaultForeColor 獲取控件的默認前景色 (從 Control 繼承)   

  在GroupBox中添加個Label控件 屬性Text分別設置如下:

  Label TextTime

  Label Text日期風格

  Label Text日期格式

  設置完成後效果如圖

  

  用2008編寫精美電子日歷
   設置後我們還需要在GroupBox中添加個ComboBox與ComboBox控件

以及一Textbox控件如圖  

   用2008編寫精美電子日歷

  Form窗體中右側界面工作完成了接著我們需要完成Form左側界面了(也是我們最重要的顯示日期日歷的界面)  

  在Form窗體左側添加MonthCalendar控件效果如圖

   用2008編寫精美電子日歷

  MonthCalendar的控件的詳細屬性  

  MonthCalendar屬性  

  Margin 獲取或設置控件之間的空間 (從 Control 繼承

  MaxDate 獲取或設置允許的最大日期

  MaximumSize 獲取或設置大小該大小是 GetPreferredSize 可以指定的上限 (從Control 繼承

  MaxSelectionCount 獲取或設置月歷控件中可選擇的最大天數

  MinDate 獲取或設置允許的最小日期

  MinimumSize 獲取或設置大小該大小是 GetPreferredSize 可以指定的下限 (從Control 繼承

  ModifierKeys 獲取一個值該值指示哪一個修改鍵(ShiftCtrl 和 Alt)處於按下的狀態 (從 Control 繼承

  MonthlyBoldedDates 獲取或設置 DateTime 對象的數組確定每月要用粗體顯示的日期

  MouseButtons 獲取一個值該值指示哪一個鼠標按鈕處於按下的狀態 (從Control 繼承

  MousePosition 獲取鼠標光標的位置(以屏幕坐標表示) (從 Control 繼承) Name 獲取或設置控件的名稱 (從 Control 繼承

  Padding 獲取或設置 MonthCalendar 控件的邊緣與該控件的內容之間的空間

  Parent 獲取或設置控件的父容器 (從 Control 繼承

  PreferredSize 獲取可以容納控件的矩形區域的大小

  (從 Control 繼承

   ProductName 獲取包含控件的程序集的產品名稱 (從 Control 繼承

   ProductVersion 獲取包含控件的程序集的版本 (從 Control 繼承

   RecreatingHandle 獲取一個值該值指示控件當前是否在重新創建其句柄 (從Control 繼承

   Region 獲取或設置與控件關聯的窗口區域 (從 Control 繼承

   Right 獲取控件右邊緣與其容器的工作區左邊緣之間的距離(以像素為單位) (從Control 繼承

   RightToLeft 獲取或設置一個值該值指示是否將控件的元素對齊以支持使用從右向左的字體的區域設置 (從 Control 繼承

   RightToLeftLayout 獲取或設置一個值該值指示控件是否從右到左布局

   ScrollChange 獲取或設置月歷控件的滾動率

   SelectionEnd 獲取或設置選定日期范圍的結束日期

   SelectionRange 為月歷控件獲取或設置選定的日期范圍

   SelectionStart 獲取或設置所選日期范圍的開始日期

   ShowToday 獲取或設置一個值該值指示控件底端是否顯示 TodayDate 屬性表示的日期

   ShowTodayCircle 獲取或設置一個值它指示是否用圓形或用正方形標識當天日期 ShowWeekNumbers 獲取或設置一個值該值指示月歷控件是否在每行日期的左側顯示周數 ()

   SingleMonthSize 獲取顯示一個日歷月所需的最小大小

   Site 獲取或設置控件的站點 (從 Control 繼承

   Size 獲取或設置 MonthCalendar 控件的大小

   TabIndex 獲取或設置在控件的容器的控件的 Tab 鍵順序 (從 Control 繼承) TabStop 獲取或設置一個值該值指示用戶能否使用 Tab 鍵將焦點放到該控件上(從 Control 繼承

   Tag 獲取或設置包含有關控件的數據的對象 (從 Control 繼承

   Text 已重寫 獲取或設置要在 MonthCalendar 上顯示的文本

   TitleBackColor 獲取或設置指示日歷標題區的背景色的值

   TitleForeColor 獲取或設置指示日歷標題區的前景色的值

   TodayDate 獲取或設置由 MonthCalendar 用作今天的日期的值

   TodayDateSet 獲取指示是否已顯式設置 TodayDate 屬性的值

   Top 獲取或設置控件上邊緣與其容器的工作區上邊緣之間的距離(以像素為單位)(從 Control 繼承

   TopLevelControl 獲取沒有另一個 Windows 窗體控件作為其父級的父控件通常這是控件所在的最外面的 Form (從 Control 繼承

   TrailingForeColor 獲取或設置一個值該值指示控件中沒有完全顯示的月中日期的顏色

   UseWaitCursor 獲取或設置一個值該值指示是否將等待光標用於當前控件以及所有子控件   

 在Form中左側添加一個CheckBox控件Text屬性設置為展示今天的日期再在CheckBox控件下部添加一個Button控件Text屬性設置為Exit  

  最終效果如圖

   用2008編寫精美電子日歷

  基本上我們的界面工作完成了接下來我們該輸入代碼了詳細過程如下

  雙擊Form窗體進入Form_Load事件中
 代碼如下

   Private Sub Form_Load(ByVal sender As SystemObject ByVal e As SystemEventArgs) Handles MyBaseLoad

   MeComboBoxItemsAdd(long)

   MeComboBoxItemsAdd(short)

   MeComboBoxItemsAdd(timedate)

   MeComboBoxItemsAdd(custom)

   MeComboBoxItemsAdd(custom)

   MeComboBoxItemsAdd(custom)

   MeComboBoxItemsAdd(custom)

   添加日期顯示格式

   MeComboBoxItemsAdd(下拉菜單式)

   MeComboBoxItemsAdd(點擊/選擇式)  

   添加起始星期

   MeComboBoxSelectedIndex =

   MeComboBoxSelectedIndex =   

   MeTextBoxText = TimeOfDay

   End Sub  

  進入ComboBox_SelectedIndexChanged事件中

  代碼如下

  Private Sub ComboBox_SelectedIndexChanged(ByVal sender As SystemObject ByVal e As SystemEventArgs) Handles ComboBoxSelectedIndexChanged

   Select Case MeComboBoxSelectedIndex

   Case

   MeDateTimePickerFormat = DateTimePickerFormatLong

   Case

   MeDateTimePickerFormat = DateTimePickerFormatShort

   Case

   MeDateTimePickerFormat = DateTimePickerFormatTime

   Case

   MeDateTimePickerFormat = DateTimePickerFormatCustom d表示一位

或兩位的天數

   MeDateTimePickerCustomFormat = MMM ddyyy ddd dd表示兩位數的天數

   Case

   MeDateTimePickerFormat = DateTimePickerFormatCustom

   MeDateTimePickerCustomFormat = dddhh:mm:sstt 星期幾名稱

   Case   

  MeDateTimePickerFormat = DateTimePickerFormatCustom MeDateTimePickerCustomFormat = ddddHH:mm:sstt

  Case

  MeDateTimePickerFormat = DateTimePickerFormatCustom MeDateTimePickerCustomFormat = ddddHH:m:sst  

   End Select

   MeTextBoxText = TimeOfDay  

   End Sub  

  進入ComboBox_SelectedIndexChanged事件中

  代碼如下

  Private Sub ComboBox_SelectedIndexChanged(ByVal sender As SystemObject ByVal e As SystemEventArgs) Handles ComboBoxSelectedIndexChanged

   Select Case MeComboBoxSelectedIndex

   Case

   MeDateTimePickerShowUpDown = False

   Case

   MeDateTimePickerShowUpDown = True  

   End Select

   MeTextBoxText = TimeOfDay  

   End Sub  

  進入CheckBox_CheckStateChanged事件中

  代碼如下

  Private Sub CheckBox_CheckStateChanged(ByVal sender As Object ByVal e As SystemEventArgs) Handles CheckBoxCheckStateChanged

   If MeCheckBoxChecked Then

   MeMonthCalendarShowToday = True

   顯示今天日期

   Else

   MeMonthCalendarShowToday = False

  

   End If

  End Sub  

  進入Button_Click事件中

  代碼如下  

  Private Sub Button_Click(ByVal sender As SystemObject ByVal e As SystemEventArgs) Handles ButtonClick

   End  

   End Sub  

  好了代碼輸入完畢在這裡補充說明如果我們平時編寫程序時輸入完代碼以後

  在代碼視圖中出現了Windows窗體設計器有很多初學者不知道是什麼實際上Windows窗體設計器裡面是系統自動生成代碼這裡面的代碼更加詳細有興趣的朋友可看一看具體打開Windows窗體設計器步驟如下因為在平時Windows窗體設計器是隱藏的 

  詳細的操作過程如下:

   先選擇<解決方案資源管理器>在上面有我們可以看到一些小圖標選中第個圖標(顯示所有文件)如圖

   用2008編寫精美電子日歷 這個時候我們可以看到之前所沒有顯示的文件了單擊Formvb的節點

   用2008編寫精美電子日歷   

  看到了嗎?就是這個文件FormDesignervb  

  雙擊打開它可以看到如圖所示的代碼視圖這就是Windows窗體設計器了  

   用2008編寫精美電子日歷   

  好了我們的所有要做的工作已經完成了最後我們來測試一下程序吧最終程序界面如下

   用2008編寫精美電子日歷 在這個程序中我們可以任意的選擇多個復選框來選擇一些樣式當然我們還可以增加更多的功能打造一個個性化的電子日歷程序


From:http://tw.wingwit.com/Article/program/net/201311/13027.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.