VB日歷-課程設(shè)計報告_第1頁
VB日歷-課程設(shè)計報告_第2頁
VB日歷-課程設(shè)計報告_第3頁
VB日歷-課程設(shè)計報告_第4頁
VB日歷-課程設(shè)計報告_第5頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、.課程設(shè)計題目 電子臺歷所選題目:電子臺歷難度:兩星級*知識點:(1)非矩形窗口;(2)動態(tài)數(shù)組;(3)配置文件的讀寫;(4)圖片的應(yīng)用;(5)控件數(shù)組;(6)彈出式菜單的使用;(7)公共對話框控件;(8)多模塊程序設(shè)計;(9)日期函數(shù)的使用前言“臺歷”是人們辦公、學(xué)習(xí)的好幫手,人們把它置于案頭用來查看日期、星期并可以方便地記事。本題目便編制一個“電子臺歷”程序,實現(xiàn)臺歷的一般功能。一、 功能1、 啟動程序,顯示一個圓角矩形窗口,并自動顯示當(dāng)前月的月歷。星期從星期一開始排列,星期六和星期天以不同的顏色顯示。2、 鼠標(biāo)單擊可以查看不同的年份和月份(左鍵增大,右鍵減?。?。單擊某個日期會在窗口右半邊

2、顯示是否有記事。雙擊左下角的當(dāng)前日期,可以使臺歷立即顯示當(dāng)月月歷。3、 在窗體的空白處右擊,可以彈出一個菜單,可以對顯示的日歷日期的顏色、字體,窗體的背影圖片加以修改。所有顏色、字體和背影圖片的設(shè)置會自動保存,下次啟動時會自動應(yīng)用上一次的設(shè)置。4、 從快捷菜單中選擇“添加節(jié)日”或“添加記事”,可以分別實現(xiàn)對節(jié)日和記事的添加。在彈出的對話框中,能同時添加多個節(jié)日或記事。二、 課程設(shè)計的詳細(xì)設(shè)計1、 程序的界面要求是圓角矩形窗口,該功能的實現(xiàn)用到了SetWindowRgn函數(shù)。SetWindowRgn函數(shù)是屬于API函數(shù),在使用時要先聲明。其代碼如下:Private Declare Functio

3、n CreateRoundRectRgn Lib gdi32 (ByVal X1 As Long, _ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long, _ByVal X3 As Long, ByVal Y3 As Long) As LongPrivate Declare Function SetWindowRgn Lib user32 (ByVal hWnd As Long, _ByVal hRgn As Long, ByVal bRedraw As Boolean) As LonghRgn = CreateRoundRectRgn(0

4、, 0, 570, 400, 80, 100) 創(chuàng)建圓角矩形區(qū)域Call SetWindowRgn(Me.hWnd, hRgn, True)2、 年份、月份、日期和記事的顯示依靠標(biāo)簽的Caption屬性。其中,星期和日期的顯示使用了控件數(shù)組,星期的顯示使用了14個控件,日期的顯示使用了74個控件。又把各個標(biāo)簽的背影設(shè)為透明,這樣,便實現(xiàn)了日歷界面的顯示。3、 為了使文字有浮于圖片之上的立體感,使用了內(nèi)容相同但顏色伸淺不同且位置錯開一點的兩個控件來實現(xiàn)。功能的實現(xiàn)依靠以下代碼:Public Sub GetCaption() 產(chǎn)生標(biāo)簽的文字,達(dá)到字體有懸浮的效果 Dim j As Integer

5、lblYear1.Caption = lblYear.Caption lblYear1.FontName = lblYear.FontName lblMonth1.Caption = lblMonth.Caption lblMonth1.FontName = lblMonth.FontName lblNow1.Caption = lblNow.Caption lblNow1.FontName = lblNow.FontName For j = 37 To 73 lblDay(j).Caption = lblDay(73 - j).Caption Next lblShowNote1.Captio

6、n = lblShowNote.Caption lblShowNote1.FontName = lblShowNote.FontName For j = 0 To 6 lblWeek(13 - j).FontName = lblWeek(j).FontName NextEnd Sub4、 本程序的主窗口使用了漂亮的圖片作背影,樣例共提供了4個.bmp格式的圖片的加載使用以下代碼來實現(xiàn):Private Sub Pic1_Click() 日歷背影圖象變化 frmCalMain.Picture = Nothing frmCalMain.Picture = LoadPicture(App.Path &

7、 picsp1.bmp) frmMenu.Pic1.Checked = True frmMenu.Pic2.Checked = False frmMenu.Pic3.Checked = False frmMenu.Pic4.Checked = False strPicName = p1End SubPrivate Sub Pic2_Click() frmCalMain.Picture = Nothing frmCalMain.Picture = LoadPicture(App.Path & picsp2.bmp) frmMenu.Pic2.Checked = True frmMenu.Pic1

8、.Checked = False frmMenu.Pic3.Checked = False frmMenu.Pic4.Checked = False strPicName = p2End SubPrivate Sub Pic3_Click() frmCalMain.Picture = Nothing frmCalMain.Picture = LoadPicture(App.Path & picsp3.bmp) frmMenu.Pic3.Checked = True frmMenu.Pic1.Checked = False frmMenu.Pic2.Checked = False frmMenu

9、.Pic4.Checked = False strPicName = p3End SubPrivate Sub Pic4_Click() frmCalMain.Picture = Nothing frmCalMain.Picture = LoadPicture(App.Path & picsp4.bmp) frmMenu.Pic4.Checked = True frmMenu.Pic1.Checked = False frmMenu.Pic2.Checked = False frmMenu.Pic3.Checked = False strPicName = p4End Sub5、 啟動程序和左

10、下角的當(dāng)前日期要求顯示當(dāng)前月歷,該功能的實現(xiàn)應(yīng)用了兩個過程和一個函數(shù)來實現(xiàn):Private Sub DisplayNow() 該過程顯示當(dāng)前日期 Dim dtmNow As Date dtmNow = Date lblYear.Caption = Format(dtmNow, yyyy年) lblMonth.Caption = Format(dtmNow, M月) lblNow.Caption = Format(dtmNow, 今天是:dddddd) strNow = Format(dtmNow, dddddd) 用于存儲當(dāng)前年、月、日字符串 intYear = Val(Format(dtmN

11、ow, yyyy) 用三個變量存儲當(dāng)前年、月、日 intMonth = Val(Format(dtmNow, M) intDay = Val(Format(dtmNow, d) dtmOne = DateAdd(d, (1 - intDay), dtmNow)當(dāng)前月的第一天 intNum = Days(intYear, intMonth) Call Sort(dtmOne, intNum) 調(diào)用過程生成每月的各個日期 使當(dāng)前日期顏色正確顯示 If frmCalMain.lblYear.Caption & frmCalMain.lblMonth.Caption & _ frmCalMain.lb

12、lDay(intNowDayIndex).Caption & 日 = strNow Then frmCalMain.lblDay(intNowDayIndex).ForeColor= frmCalMain.lblNow.ForeColor End IfEnd SubPrivate Sub Sort(dtm1 As Date, int1 As Integer) 該過程生成每月的各個日期 Dim intweek As Integer, i As Integer, j As Integer Dim h As Integer For h = 0 To 36 各個日期標(biāo)簽標(biāo)題清空 lblDay(h).C

13、aption = Next h intweek = Val(Format(dtm1, w) 計算每月的第一天為星期幾 If intweek - 1 0 Then i = intweek - 2 Else i = 6 End If j = 0 Do While j int1 lblDay(i).Caption = j + 1 lblDay(i).MousePointer = 99 使指針變成手的圖形 lblDay(i).MouseIcon = LoadPicture(App.Path & Resourcehand.cur) j = j + 1 i = i + 1 Loop For j = 0 T

14、o 36 If lblDay(j).Caption = ThenlblDay(j).MousePointer = 99使指針邊成移動的圖形 lblDay(j).MouseIcon=LoadPicture(App.Path&Resourcemove.cur) End If NextEnd SubPrivate Function Days(intY As Integer, intM As Integer) 該函數(shù)計算每月天數(shù) Dim k As Integer Select Case intM Case 1, 3, 5, 7, 8, 10, 12 k = 31 Case 2 If intY Mod

15、4 = 0 Then k = 29 Else k = 28 End If Case Else k = 30 End Select Days = kEnd Function6、 本程序使用了配置文件格式來保存關(guān)于顏色、字體和圖片的設(shè)置以及節(jié)日和記事內(nèi)容。配置文件是一種特殊的文本文件,一般以.ini為擴(kuò)展名,它可以使用記事本打開。因為配置文件的特殊格式,Windows提供了專門的API函數(shù)來對起進(jìn)行讀寫。該功能的實現(xiàn)用到了以下語句:Private Declare Function WritePrivateProfileString Lib kernel32 Alias _WritePrivateP

16、rofileStringA (ByVal lpApplicationName As String, _ByVal lpKeyName As Any, ByVal lpString As Any, ByVal lpFileName As String) As LongPrivate Declare Function GetPrivateProfileString Lib kernel32 Alias _GetPrivateProfileStringA (ByVal lpApplicationName As String, _ByVal lpKeyName As Any, ByVal lpDefa

17、ult As String, ByVal _lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As LongDim s As String * 100獲得星期一至星期五的顏色參量 Call WritePrivateProfileString(SetColor, 顏色1, strColor1 App.Path & cal.set)Call GetPrivateProfileString(SetColor, 顏色1, 0, s, 100, App.Path & cal.set)獲得星期的字體參量

18、Dim s As String * 100, strFont1As StringCall WritePrivateProfileString(SetFont, 字體1, strFont2, App.Path & cal.set)Call GetPrivateProfileString(SetFont, 字體1, 0, s, 100, App.Path & cal.set)7、 以上的六個過程不是很難,對我來說花是時間最長的是節(jié)日和記事的讀出。因為節(jié)日和記事在記事本中的保存位置不同,一個在節(jié)名為Festival中,一個在節(jié)名為Note中,而它們要在同一個標(biāo)簽中顯示,而且以序號排列。我用了很長時間

19、進(jìn)行調(diào)試來實現(xiàn)了該要求。其代碼如下:Private Sub lblDay_Click(Index As Integer) Dim strCaption As String, s1 As String, strFest As String Dim s2 As String * 100, strNote As String, strFest1 As String Dim strMid As String, strDate1 As String, strFest2 As String Dim strDate2 As String, strNoteAndDate As String, strFestA

20、ndDate As String Dim i As Integer, j As Integer, k As Integer strDate1保存被選擇的日期 strDate1 = Left(lblYear.Caption, 4) & - & Left(lblMonth.Caption, _ InStr(lblMonth.Caption, 月) - 1) & - & lblDay(Index).Caption strMid = strDate1 + Chr(32) + Chr(32) + Chr(32) + Chr(32) + Chr(32) + _ Chr(32) + Chr(32) + Ch

21、r(32) + Chr(32) + Chr(32) + Chr(32) + Chr(32) + Chr(32) lblShowNote.Caption = 顯示記事標(biāo)簽標(biāo)題清空 strCaption = lblDay(Index).Caption If strCaption = Then Exit Sub strFest1 = Left(lblMonth.Caption, _ InStr(lblMonth.Caption, 月) - 1) & - & lblDay(Index).Caption Do 此循環(huán)用于顯示被選擇的日期有無記事 i = i + 1 s1 = 節(jié)日 & i s2 = Ca

22、ll GetPrivateProfileString(Festival, s1, 0, s2, 100, App.Path & cal.set) If Trim(Left(s2, InStr(s2, Chr(0) - 1) = 0 Then Exit Do strFestAndDate = Trim(Left(s2, InStr(s2, Chr(0) - 1) strFest2 = Left(strFestAndDate, InStr(strFestAndDate, :) - 1) strFest2保存記事本中已有的日期 strFest = Right(strFestAndDate, Len(

23、strFestAndDate) - InStr(strFestAndDate, :) strFest保存記事本中存儲的記事 If strFest2 = strFest1 Then 若條件成立,則被選擇的日期有記事 k = k + 1 strMid = strMid + Chr(13) + Chr(10) + CStr(k) + : + strFest lblShowNote.Caption = strMid strFest2 = End If Loop i = 0If lblShowNote.Caption = Then此循環(huán)用于顯示被選擇的日期有無記事 Do While strDate2 s

24、trDate1 i = i + 1 s1 = 記事 & i s2 = Call GetPrivateProfileString(Note, s1, 0, s2, 100, App.Path & cal.set) If Trim(Left(s2, InStr(s2, Chr(0) - 1) = 0 Then lblShowNote.Caption = strMid + 無記事 Exit Do End If strNoteAndDate = Trim(Left(s2, InStr(s2, Chr(0) - 1) strDate2 = Left(strNoteAndDate, InStr(strNo

25、teAndDate, :) - 1) strDate2保存記事本中已有的日期 strNote = Right(strNoteAndDate, Len(strNoteAndDate) - InStr(strNoteAndDate, :) strNote保存記事本中存儲的記事 Loop End If i = 0: j = k Do 此循環(huán)用于顯示被選擇的日期有無記事 i = i + 1 s1 = 記事 & i s2 = Call GetPrivateProfileString(Note, s1, 0, s2, 100, App.Path & cal.set) If Trim(Left(s2, In

26、Str(s2, Chr(0) - 1) = 0 Then Exit Do strNoteAndDate = Trim(Left(s2, InStr(s2, Chr(0) - 1) strDate2 = Left(strNoteAndDate, InStr(strNoteAndDate, :) - 1) strDate2保存記事本中已有的日期 strNote = Right(strNoteAndDate, Len(strNoteAndDate) - InStr(strNoteAndDate, :) strNote保存記事本中存儲的記事 If strDate2 = strDate1 Then 若條

27、件成立,則被選擇的日期有記事 j = j + 1 strMid = strMid + Chr(13) + Chr(10) + CStr(j) + : + strNote lblShowNote.Caption = strMid strDate2 = End If Loop GetCaptionEnd Sub自己認(rèn)為上述代碼還不夠簡潔,還可以進(jìn)行修改和簡化,由于時間倉促,來不及再進(jìn)行修改。三、 調(diào)試程序的過程1、 在顯示當(dāng)前月的日期時,曾一度發(fā)生錯誤,不容易找到實現(xiàn)該過程的方法。曾經(jīng)想過運(yùn)用當(dāng)前日期所在的標(biāo)簽的Index號然后進(jìn)行加或減生成各個日期,可是這樣調(diào)試了好久,不但代碼很多,而且該過程不

28、容易實現(xiàn)。最后自己終于找到了一種簡便的算法:先運(yùn)用Format函數(shù)得到當(dāng)前日期,然后生成當(dāng)前月的第一天,接著計算該天所在標(biāo)簽,得到標(biāo)簽的Index號,最后計算輸出當(dāng)前月的各個日期。這樣,整個過程很簡潔快速的實現(xiàn)了。2、 在生成矩形窗口時,自己遇到了問題:一個窗口一旦有了菜單,運(yùn)用SetWindowRgn函數(shù)便不好實現(xiàn)對其的剪切,其最后效果因為存在著標(biāo)題欄(最上部存在一個綠色的長條)而變的難看,不符合要求。自己調(diào)試了好久依然不成功。最后自己又增加了一個窗體frmMenu,在該窗體放置了菜單和公共對話框控件。這樣之后,當(dāng)右擊主窗體frmCalMain時便彈出frmMenu窗體的菜單。這樣,原來可能

29、集中在窗體frmCalMain中的代碼便部分轉(zhuǎn)移到了frmMenu窗體中,有利于程序的調(diào)試。3、 在編寫顏色對話框時不能實現(xiàn)對上一次操作的記憶,自己調(diào)試了好久,首先想把在顯示當(dāng)前日期時要求其顏色要保持和lblNow標(biāo)簽的顏色一樣,這樣增加了設(shè)計的難度,因為不知道該日期是星期幾,而且,在單擊lblYear和lblMonth時要注意顏色的一致性,即月份或年份一旦改變,原來用來顯示當(dāng)前日期的標(biāo)簽的顏色就要可能改變,保持所在星期顏色的一致性。自己調(diào)試了好久,運(yùn)用一個全局變量intNowDayIndex滿足了該要求。其具體過程可看附件的代碼。4、 當(dāng)然還有許多問題,像運(yùn)用CommonDialog的Sho

30、wFont屬性無用(只要把CommonDialog的Flags屬性值設(shè)為2),節(jié)日和記事不能正確保存(設(shè)計時ComboBox的List屬性值輸入時存在大量的空格)等等小問題,這里就不一一說了。四、 輸入輸出數(shù)據(jù)此電子臺歷幾乎沒有涉及數(shù)據(jù)的輸入輸出,這里也就不在列出。五、 課程設(shè)計總結(jié)雖然說此電子臺歷只有兩顆星,但我花的時間并不短,算起來,大約有三個星期,這其中有暑假的一個多星期的時間。整體說來,自己還是蠻有成就感的,畢竟自己僅僅是剛學(xué)了VB一年。在設(shè)計時,許多自己在課堂或考試中沒有遇到或接觸的東西都是自己看書解決的,這樣使得自己感到在VB上的知識又掌握了許多。正如老師說的,VB課程設(shè)計關(guān)鍵是訓(xùn)

31、練學(xué)生把所學(xué)知識運(yùn)用到實踐當(dāng)中去,自己在課堂上學(xué)到了什么,就真正掌握了什么。自己本來就夢想要自己編制屬于自己的程序,可以說,自己的夢想已經(jīng)實現(xiàn),自己確實感到很高興。六、 附件電子臺歷源代碼:frmCalMain窗體:Option ExplicitOption Base 1Private dtmOne As Date, lngMidColor As Long, strNow As String, LocalMousePlaceX As SinglePrivate strSatColor As String, strSunColor As String, strMtoFColor As Strin

32、g, LocalMousePlaceY As SinglePublic intMonth As Integer, intNum As Integer, intNowDayIndex As IntegerPublic intYear As Integer, intDay As IntegerAPI函數(shù)的聲明Private Declare Function CreateRoundRectRgn Lib gdi32 (ByVal X1 As Long, _ByVal Y1 As Long, ByVal X2 As Long, ByVal Y2 As Long, _ByVal X3 As Long,

33、ByVal Y3 As Long) As LongPrivate Declare Function SetWindowRgn Lib user32 (ByVal hWnd As Long, _ByVal hRgn As Long, ByVal bRedraw As Boolean) As LongPrivate Declare Function WritePrivateProfileString Lib kernel32 Alias _WritePrivateProfileStringA (ByVal lpApplicationName As String, _ByVal lpKeyName

34、As Any, ByVal lpString As Any, ByVal lpFileName As String) As LongPrivate Declare Function GetPrivateProfileString Lib kernel32 Alias _GetPrivateProfileStringA (ByVal lpApplicationName As String, _ByVal lpKeyName As Any, ByVal lpDefault As String, ByVal _lpReturnedString As String, ByVal nSize As Lo

35、ng, ByVal lpFileName As String) As LongPrivate Sub Sort(dtm1 As Date, int1 As Integer) 該過程生成每月的各個日期 Dim intweek As Integer, i As Integer, j As Integer Dim h As Integer For h = 0 To 36 各個日期標(biāo)簽標(biāo)題清空 lblDay(h).Caption = Next h intweek = Val(Format(dtm1, w) 計算每月的第一天為星期幾 If intweek - 1 0 Then i = intweek -

36、 2 Else i = 6 End If j = 0 Do While j int1 lblDay(i).Caption = j + 1 lblDay(i).MousePointer = 99 lblDay(i).MouseIcon = LoadPicture(App.Path & Resourcehand.cur) 使指針變成手的圖形 j = j + 1 i = i + 1 Loop For j = 0 To 36 If lblDay(j).Caption = Then lblDay(j).MousePointer = 99 lblDay(j).MouseIcon = LoadPicture

37、(App.Path & Resourcemove.cur) 使指針邊成移動的圖形 End If NextEnd SubPrivate Sub DisplayNow() 該過程顯示當(dāng)前日期 Dim dtmNow As Date dtmNow = Date lblYear.Caption = Format(dtmNow, yyyy年) lblMonth.Caption = Format(dtmNow, M月) lblNow.Caption = Format(dtmNow, 今天是:dddddd) strNow = Format(dtmNow, dddddd) 用于存儲當(dāng)前年、月、日字符串 intY

38、ear = Val(Format(dtmNow, yyyy)用三個變量存儲當(dāng)前的年、月、日 intMonth = Val(Format(dtmNow, M) intDay = Val(Format(dtmNow, d) dtmOne = DateAdd(d, (1 - intDay), dtmNow) 當(dāng)前月的第一天 intNum = Days(intYear, intMonth) Call Sort(dtmOne, intNum) 調(diào)用過程生成每月的各個日期 使當(dāng)前日期顏色正確顯示 If frmCalMain.lblYear.Caption & frmCalMain.lblMonth.Cap

39、tion & _ frmCalMain.lblDay(intNowDayIndex).Caption & 日 = strNow Then frmCalMain.lblDay(intNowDayIndex).ForeColor= frmCalMain.lblNow.ForeColor End IfEnd SubPublic Sub GetCaption() 產(chǎn)生標(biāo)簽的文字,達(dá)到字體有懸浮的效果 Dim j As Integer lblYear1.Caption = lblYear.Caption lblYear1.FontName = lblYear.FontName lblMonth1.Cap

40、tion = lblMonth.Caption lblMonth1.FontName = lblMonth.FontName lblNow1.Caption = lblNow.Caption lblNow1.FontName = lblNow.FontName For j = 37 To 73 lblDay(j).Caption = lblDay(73 - j).Caption Next lblShowNote1.Caption = lblShowNote.Caption lblShowNote1.FontName = lblShowNote.FontName For j = 0 To 6 l

41、blWeek(13 - j).FontName = lblWeek(j).FontName NextEnd SubPrivate Sub ShowNowColor() 此過程顯示當(dāng)前日期的顏色 Dim i As Integer If lblYear.Caption & lblMonth.Caption & lblDay(intNowDayIndex).Caption & 日 = strNow Then lblDay(intNowDayIndex).ForeColor = frmCalMain.lblNow.ForeColor Else Select Case intNowDayIndex Ca

42、se 5, 12, 19, 2, 633 lblDay(intNowDayIndex).ForeColor = CLng(strSatColor) Case 6, 13, 20, 27, 34 lblDay(intNowDayIndex).ForeColor = CLng(strSunColor) Case Else lblDay(intNowDayIndex).ForeColor = CLng(strMtoFColor) End Select End IfEnd SubPrivate Function Days(intY As Integer, intM As Integer)該函數(shù)計算每月

43、的天數(shù) Dim k As Integer Select Case intM Case 1, 3, 5, 7, 8, 10, 12 k = 31 Case 2 If intY Mod 4 = 0 Then k = 29 Else k = 28 End If Case Else k = 30 End Select Days = kEnd FunctionPublic Sub GetShowNowLblelIndex()此過程可獲得當(dāng)前日子所在標(biāo)簽的Index號 Dim i As Integer For i = 0 To 36 If frmCalMain.lblDay(i).Caption = CS

44、tr(frmCalMDay) Then intNowDayIndex = i Exit For End If NextEnd SubPrivate Sub Form_Load() Dim i As Integer, s2 As String Dim hRgn As Long, s As String * 100, strWeekFont As String Dim strTodayColor As String, strHeadColor As String, strTodayFont As String Dim strNoteColor As String, strNoteFo

45、nt As String, strHeadFont As String DisplayNow 調(diào)用過程顯示當(dāng)前日期 GetShowNowLblelIndex 獲得當(dāng)前日子所在標(biāo)簽的Index號 # 各標(biāo)簽獲得顏色參量 # Call GetPrivateProfileString(SetColor, 顏色1, 0, s, 100, App.Path & cal.set) strMtoFColor = Trim(Left(s, InStr(s, Chr(0) - 1) 獲得星期一至星期五的顏色參量 For i = 0 To 36 frmCalMain.lblDay(i).ForeColor = C

46、Lng(strMtoFColor)字體顏色的獲取 Select Case i Case 4, 11, 18, 25, 32 i = i + 2 End Select Next Call GetPrivateProfileString(SetColor, 顏色2, 0, s, 100, App.Path & cal.set) strSatColor = Trim(Left(s, InStr(s, Chr(0) - 1) 獲得星期六的顏色參量 For i = 5 To 33 Step 7 If i = intNowDayIndex Then i = i + 7 frmCalMain.lblDay(

47、i).ForeColor = CLng(strSatColor) Next Call GetPrivateProfileString(SetColor, 顏色3, 0, s, 100, App.Path & cal.set) strSunColor = Trim(Left(s, InStr(s, Chr(0) - 1) 獲得星期天的顏色參量 For i = 6 To 34 Step 7 If i = intNowDayIndex Then i = i + 7 frmCalMain.lblDay(i).ForeColor = CLng(strSunColor) Next Call GetPriv

48、ateProfileString(SetColor, 顏色4, 0, s, 100, App.Path & cal.set) strTodayColor = Trim(Left(s, InStr(s, Chr(0) - 1) 獲得顏色參量 frmCalMain.lblNow.ForeColor = CLng(strTodayColor) frmCalMain.lblDay(intNowDayIndex).ForeColor = CLng(strTodayColor) Call GetPrivateProfileString(SetColor, 顏色5, 0, s, 100, App.Path

49、& cal.set) strHeadColor = Trim(Left(s, InStr(s, Chr(0) - 1) 獲得顏色參量 frmCalMain.lblYear.ForeColor = CLng(strHeadColor) frmCalMain.lblMonth.ForeColor = CLng(strHeadColor) For i = 0 To 6 frmCalMain.lblWeek(i).ForeColor = CLng(strHeadColor) Next Call GetPrivateProfileString(SetColor, 顏色6, 0, s, 100, App.

50、Path & cal.set) strNoteColor = Trim(Left(s, InStr(s, Chr(0) - 1) 獲得顏色參量 frmCalMain.lblShowNote.ForeColor = CLng(strNoteColor) Call GetPrivateProfileString(Pic, 圖片, 0, s, 100, App.Path & cal.set) frmMenu.strPicName = Trim(Left(s, InStr(s, Chr(0) - 1) 保存記事本的圖片信息不丟失,在窗體frmMenu的Exit的單擊事件中用到該變量 s2 = CStr(App.Path & & Pics & &

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論