【文章內(nèi)容簡介】
對標(biāo)簽上所顯示的文本進(jìn)行字型、字體、大小、風(fēng)格和顏色的設(shè)置。首先和時(shí)鐘界面相同,做出聲明,將窗體的背景顏色設(shè)置為透明色,然后運(yùn)用常用的日期函數(shù)條用系統(tǒng)的日期。Year(Now)調(diào)用系統(tǒng)年份,Month(Now) 調(diào)用系統(tǒng)月份,Day(Now)調(diào)用系統(tǒng)日期。主要程序如下。Dim rtnamp。Dim X0, Y0 As IntegerPrivate Sub Form_ Load()Me. Back Color = RGB(66,66,66)rtn = Get Window Long(hwnd, GWL_EXSTYLE)rtn = rtn Or WS_EX_LAYEREDSet Window Long hwnd, GWL_EXSTYLE, rtnSet Layered Window Attributes hwnd, RGB(66,66,66), 0, LWA_COLORKEY 39。將RGB(66,66,66)顏色設(shè)置為透明的End SubPrivate Sub Timer1_Timer()Label1=Year(Now)amp?!澳辍盿mp。Month(Now)amp?!霸隆盠abel2=Day(Now)Label3=Weekday Name(Weekday(Date))End SubPrivate Sub Command1_ Click()Unload Form2End SubPrivate Sub Form _Mouse Down(Button As Integer, Shift As Integer, X As Single, Y As Single)Release CaptureSend Message ,amp。HA1,2,0amp。End SubPrivate Sub Label1_Mouse Down(Button As Integer, Shift As Integer, X As Single, Y As Single)Release CaptureSend Message ,amp。HA1,2,0amp。End SubPrivate Sub Label2_Mouse Down(Button As Integer,Shift As Integer, X As Single, Y As Single)Release CaptureSend Message Me. hwnd,amp。HA1, 2, 0amp。End Sub首先在文本框中顯示表盤上當(dāng)前的時(shí)間,通過鍵盤輸入賦值,返回到時(shí)鐘程序中,以在時(shí)鐘上顯示調(diào)整后的時(shí)間,或者可以通過鼠標(biāo)點(diǎn)擊加減時(shí)間數(shù),每點(diǎn)擊一次改變值為1。如通過鍵盤輸入,時(shí)的數(shù)值超過24或分、秒的數(shù)值超過60,則提示錯(cuò)誤,返回當(dāng)前時(shí)間,如果通過鼠標(biāo)點(diǎn)擊改變數(shù)值,則時(shí)的數(shù)值大于24,則返回到0,分、秒的數(shù)值大于60,返回到0,以此循環(huán)[9]。 調(diào)時(shí)算法流程圖同樣地,在當(dāng)前工程中添加窗體,運(yùn)用命令按鈕(Command Button)、文本框(Text Box)、垂直滾動(dòng)條(VScroll Box)控件。 調(diào)時(shí)對象窗口(1)命令按鈕(Command Button)選擇兩個(gè)命令按鈕(Command Button)Command1和Command2按鈕,分別設(shè)定名字為“確定”、“取消”。點(diǎn)擊“確定”,即修改為所設(shè)定的時(shí)間,同時(shí)關(guān)閉此窗口,點(diǎn)擊“取消”,時(shí)間仍為修改前的時(shí)間。屬性設(shè)置與時(shí)鐘界面的按鈕類似[10]。(2)文本框(Text Box)文本框(Text Box)控件用來顯示表盤上所顯示的時(shí)間,并可以通過鍵盤輸入修改時(shí)間。在文本框的屬性中設(shè)置其字體大小、顏色等,及文本框的大小。Alignment設(shè)置為2,文本中間對齊。Tab Stop設(shè)置是否可以用“Tab”鍵選取此對象。取值為:True可以、False不可以。設(shè)計(jì)中選擇Ture,這樣用戶可用通過鍵盤上的“Tab”鍵實(shí)現(xiàn)文本框的選擇[11]。(3)垂直滾動(dòng)條(V Scroll Box)控件滾動(dòng)條通常用于附在窗體上協(xié)助觀察數(shù)據(jù)或確定位置,也可以用來做數(shù)據(jù)的輸入工具,本次設(shè)計(jì)使用滾動(dòng)條完成數(shù)據(jù)的輸入。主要屬性設(shè)置如下。Enabled用于設(shè)定是或?qū)κ录a(chǎn)生響應(yīng),取值為:True 可用、False 不可用,在執(zhí)行程序時(shí),該對象用灰色顯示,并且不響應(yīng)任何事件。將其設(shè)置為Ture,以響應(yīng)事件。Max定義Value屬性值的最大值,Min定義Value屬性值的最小值,設(shè)計(jì)中使用了三個(gè)滾動(dòng)條,VScrollBox1的Max設(shè)為100,Min設(shè)為0;VScrollBox2和VScrollBox3的Max設(shè)為100,Min設(shè)為0。Small Change用于設(shè)置單擊滾動(dòng)條兩端箭頭時(shí),每單擊一次滾動(dòng)條移動(dòng)的數(shù)量。將其設(shè)置為1,每點(diǎn)擊一次,數(shù)值的變化值為1。Value屬性值對應(yīng)于滾動(dòng)框在滾動(dòng)條中的相應(yīng)位置,是一個(gè)整數(shù)。在程序中將當(dāng)前的時(shí)間值賦值給Value,以實(shí)現(xiàn)準(zhǔn)確調(diào)時(shí)[12]。加載窗體時(shí)將當(dāng)前的時(shí)、分、秒取整顯示在文本框中,根據(jù)算法,設(shè)計(jì)調(diào)時(shí)界面的主要程序如下:Private Sub Form_ Load()=Int(H)=Int(M)=Int(S)=25=0=1=60=0=1=60=0=1End SubPrivate Sub Command1_ Click()If Val() = 24 And Val() = 60 And Val()60ThenH=Val()M=Val()S=Val()Unload Form3Else=Hour(Now)=Minute(Now)=Second(Now)End IfEnd SubPrivate Sub Command2_ Click()Unload Form3End SubPrivate Sub Text1_ hange()=Val()End SubPrivate Sub Text2_ Change()=Val()End SubPrivate Sub Text3_ Change()=Val()End SubPrivate Sub VScroll1_ Change()=If =24Then=0End IfEnd SubPrivate Sub VScroll2_ Change()=If =60 Then=0End IfEnd SubPrivate Sub VScroll3_ Change()=If =60Then=0End IfEnd Sub首先在文本框中顯示當(dāng)前的日期,通過鍵盤輸入賦值,設(shè)定日期,使用Visual basic的內(nèi)部函數(shù)Date Diff函數(shù),可用于倒計(jì)時(shí),根據(jù)系統(tǒng)的日期將設(shè)置日期和當(dāng)前日期相減,得到具體的數(shù)值,顯示在界面上。在窗體Form3中添加倒計(jì)時(shí)界面部分,使用框架(Frame)控件將各個(gè)獨(dú)立的功能模塊隔開,在此框架中運(yùn)用了標(biāo)簽(Label)、命令按鈕(Command Button)、文本框(Text Box)控件。 倒計(jì)時(shí)對象窗口其控件屬性的設(shè)置與調(diào)時(shí)界面的設(shè)置類似,只將其命令按鈕(Command Button)命名為“開啟”和“關(guān)閉”,單擊開啟按鈕,則在日歷界面上顯示倒計(jì)時(shí),與日歷相隔顯示,單擊關(guān)閉按鈕,則不顯示倒計(jì)時(shí),在日歷界面上只顯示日歷部分。Private Sub Command3_ Click()a=Val()b=Val()c=Val()g=1End SubPrivate Sub Command4_ Click()g=0End SubPrivate Sub Timer1_ Timer()k=k+1If g=0ThenLabel1=Year(Now)amp?!澳辍盿mp。Month(Now)amp?!霸隆盠abel2=Day(Now)Label3=Weekday Name(Weekday(Date))End IfIf g=1 ThenIf k=10ThenLabel1=Year(Now)amp?!澳辍盿mp。Month(Now)amp?!霸隆盠abel2= Day(Now)Label3=Weekday Name(Weekday(Date))Else If k10And k15ThenLabel1=“距”amp。 a amp?!澳辍盿mp。 b amp?!霸隆盿mp。 c amp?!叭铡盿mp。“還有”Label2=Date Diff(“d”,Date,aamp?!啊盿mp。 b amp?!啊盿mp。 c)Label3=“天”ElseIf k=15Thenk=0EndIfEndIfEndIfEndSub首先將文本框內(nèi)容設(shè)置為0,通過鍵盤輸入賦值,返回到程序中,或者可以通過鼠標(biāo)點(diǎn)擊加減時(shí)間數(shù),每點(diǎn)擊一次改變值為1,以此來設(shè)定鬧點(diǎn)的時(shí)間。如通過鍵盤輸入,時(shí)的數(shù)值超過24或分、秒的數(shù)值超過60,則提示錯(cuò)誤,返回為0,如果通過鼠標(biāo)點(diǎn)擊改變數(shù)值,則時(shí)的數(shù)值大于24,則返回到0,分、秒的數(shù)值大于60,返回到0以,以此循環(huán)。然后判斷文本框中的數(shù)值是否分別于時(shí)、分、秒的數(shù)值相同,如果相同,則彈出音樂界面,播放音樂,單擊關(guān)閉按鈕,退出音樂,如果沒有點(diǎn)擊,則循環(huán)播放音樂。 鬧鐘算法流程圖鬧鐘的界面設(shè)計(jì)包括兩部分內(nèi)容,一部分為設(shè)置界面,一部分為播放音樂提醒界面。在窗體Form3中添加鬧鐘設(shè)置界面部分,同樣使用框架(Frame)控件將功能模塊隔開,在此框架中運(yùn)用標(biāo)簽(Label)、命令按鈕(Command Button)、文本框(Text Box)、垂直滾動(dòng)條(V Scroll Box)控件。 鬧鐘對象窗口其標(biāo)簽(Label)、命令按鈕(Command Button)、文本框(Text Box)控件屬性的設(shè)置與倒計(jì)時(shí)界面的設(shè)置相同,垂直滾動(dòng)條(V Scroll Box)控件的屬性設(shè)置相同。在工程中添加窗體Form4,設(shè)計(jì)播放音樂提醒界面,設(shè)計(jì)中使用到了Windows Media Player控件,因?yàn)樗皇浅S每丶孕鑼⑵涮砑拥焦ぞ邫谥?,單擊“工程”下的“部件”命令將Windows Media Player控件前打鉤,單擊“應(yīng)用”將其添加。并將其visible屬性設(shè)置為false。添加Image空間在窗體上并插入所需圖片。 播放音樂對象窗口鬧鐘設(shè)置的主要程序代碼如下:Private Sub Text7_ Change()If Val()=24Then = 0i=MsgBox(“輸入超出范圍,請重新輸入…”, 16, “輸入錯(cuò)誤”)Else=Val()EndIfEnd SubPrivate Sub Text8_ Change()If Val()=60Then = 0i=Msg Box(“輸入超出范圍,請重新輸入…”, 16, “輸入錯(cuò)誤”)Else=Val()EndIfEnd SubPrivate Sub Text9_ Change()If Val()=60Then = 0i = Msg Box(“輸入超出范圍,請重新輸入…”, 16, “輸入錯(cuò)誤”)Else = Val()End IfPrivate Sub VScroll4_ Change() = If =24Then = 0End IfEnd SubPrivate Sub VScroll5_ Change() = If =60Then=0End IfEnd SubPrivate Sub VScroll6_ Change() = If =60Then=0End IfEnd SubIf f = 1 ThenIf Int(H)=hn And Int(M)=mn And Int(S)=sn ThenEnd If播放音樂主要程序代碼如下:Private Sub Form_ Load()=“=“歌曲\”End SubPrivate Sub WindowsMediaPlayer1_Play State Change(By