需求分析:需要做一款可以通過winform 自己繪製的月曆,原因是可以通過這種方法進行在月曆下製作日程,如圖所示:
一、製作須知:
1、需要用picturebox將**組合起來,並且在picturebox上面增加label
2、label的作用是為了顯示切換月份的時候需要重新對label賦值
3、需要編寫讀取每年每月當天有多少天,以及每個月的1號對應的是星期幾
二、製作步驟:
1、新建乙個winform,新增兩個combox用於獲取某年某月
2、新增picturebox ,按照圖示所示將控制項組合起來
3、在所有的picturebox(灰色部分)上,新建label,初始化的時候預設使得 label.text = "",即不顯示
4、新增乙個測試按鈕,註冊乙個事件
int currentyear = convert.toint32(combobox1.text.tostring());
int currentmonth = convert.toint32(combobox2.text.tostring());
int x, y;
x = whatday(currentyear, currentmonth);//得出某年某月的第一天是星期幾
y = everymonthdays(currentyear, currentmonth);//得出某年某月的天數
setvalue(currentyear, currentmonth); //將當前的資訊傳入自定義函式
4、得出星期幾
public int whatday(int currentyear, int month)
else
}for (int j = 1; j < month; j++)
num = totaldays % 7;
return num + 1;
}
5、得出天數
public int everymonthdays(int year, int month)//判斷某年每個月的天數
else if (i == 4 || i == 6 || i == 9 || i == 11)
else if (i == 2 && isleapyear(year) == true)
else
return monthday;
}
6、編寫setvalue(引數1,引數2)自定義函式
這個函式主要是為了將得到的4,5 的結果,並通過遍歷的方法,將值賦值給label
以上;需要原始碼請發資訊
如何寫出最快的迴圈
作者 laruence 你知道怎麼寫出最快的迴圈麼?剛剛在曉東郭的 blog 看到乙個有趣的問題 php 中 i 和 i 的區別 1.方式一 2.3.begin time 4.i 0 5.while i 10000 6.12.end time 13.14.時間 16s 15.16.方式二 17.18...
如何寫出簡單的程式
簡單的程式,要求其結構簡單,目的明確,易閱讀和理解。簡單,總是有助於程式的正確性。現在我們來 一下如何將程式寫得簡單。首先,先說命名的問題,包括目錄結構名,檔名,類名,變數名等。命名應使用統一的命名規則和常識。統一的命名是程式設計師之間交流的common sence,不同的命名會增加程式閱讀的難度 ...
如何寫出專業的標頭檔案
做到專業,應該是每個職業程式設計師應該要求自己做到的。讓我們看看lua是怎麼寫標頭檔案的。1.license agreement license agreement應該加在每個標頭檔案的頂部。整個標頭檔案應該在guard define之間 ifndef lua h define lua h endi...