C# 是什么?
依然按照我自己的理解說,C# 是面向對象的、面向組件的編程語言。對我來說,C# 就是編寫 GUI 的一種語言之一,C# 還常與 .NET 做聯系,這里有官方解釋,由於我看不懂就不說了。當然,我學習這個也只是因為 QT 下載太麻煩了,隨便學習一下 C# 好與之比較
Windows Forms 和 WPF 桌面應用程序
我選的是 Winform(Windows Forms),現階段學完了它的基礎,看了一下這篇文章,大致了解到 WPF 也是差不多一樣的 GUI 設計,只是 WPF 沒有直觀的工具箱拖拽,基本依靠手寫(copy)代碼,它使用 XAML 創建控件,也就是主體都在 .xaml 文件中編寫代碼,現在對我來說可能都差不太多,但我只學了 Winform,另一者便懶得學了(flag)
參考來源
參考了知乎的一個回答:從 MSDN Library 的 C# Programming Guide 部分找找看 Windows Forms 編程的教程,容易上手
這里解釋一下:MSDN Library 應該是 Microsoft 自家的信息檢索庫,可以瀏覽到很多產品或軟件信息(詳細看這),但它是離線版的,在線版的可以直接在官網查,我就是這樣做的,關於 Winform 的在線版教程點此(我學習的)
示例展品
下面這三個小項目是我跟着 Microsoft 官網教程 做出來的
一、圖片查看器
二、計時數學測驗
三、配對游戲
PS:我感覺這個代碼的 label1_Click 和 timer1_Tick 函數很牛逼(實現了配對成功和配對失敗后的圖標隱藏),讓我明白了原來還能這么玩
制作過程的小提示
① VS 創建項目選擇的模板
② 左側的“工具箱”選項卡的快捷鍵:Ctrl + Alt + X
③ 如果工具箱是空的,請確保在打開工具箱前選擇窗體設計器,而不是窗體的后台代碼
制作過程的筆記
① 控件的事件是,只要做目標動作,就能觸發,而不是按照代碼執行順序
比如下面中的 click 事件,即只要點擊 label 控件就能觸發
② Timer 控件只要在別的函數中啟動(Start)了,就立即轉回自己的函數(timer_Tick)中【自己猜測】
比如下面的兩個控件函數,執行順序是先在 label1_Click 函數中運行 timer1.Start();
,然后再到 timer1_Tick 方法中運行,一直運行到 timer1.Stop();
private void label1_Click(object sender, EventArgs e)
{
...
timer1.Start();
}
private void timer1_Tick(object sender, EventArgs e)
{
...
timer1.Stop();
}