網(wǎng)站首頁 編程語言 正文
在【解決方案資源管理器】中找到Form1.cs,單擊,快捷鍵F2重命名為“Login.cs”(命名很重要,不然之后項目多了根據(jù)不知道哪個項目的內(nèi)容是什么)
對窗體【Text】屬性、【size】屬性和【FormBoardStyle】屬性進(jìn)行修改
添加一個新的窗體
Ctrl+Shift+A,在彈出框中選擇【W(wǎng)indows窗體】,命名為main.cs
取消登錄界面最大化最小化關(guān)閉按鈕在父窗體菜單欄上顯示
最大化:MaximizeBox,最小化:MinimizeBox
如果設(shè)置一個為False 的時候會顯示不可用,兩個都設(shè)置為False 的時候,兩個按鈕同時消失。
關(guān)閉按鈕沒有設(shè)置不可用;
但是有一個ControlBox屬性,設(shè)置為False 的時候最小化、最大化、關(guān)閉按鈕都會消失。
也可以在login.Designer.cs中添加以下代碼
this.MaximizeBox = false; //禁用最大化按鈕,這里的this是指窗體對象
this.MinimizeBox = false; //禁用最小化按鈕
//this.ControlBox = false; //同時禁用最大化最小化關(guān)閉按鈕
如果關(guān)閉按鈕被禁用了,這個窗口就無法通過系統(tǒng)自帶的功能來關(guān)閉。必須要再寫一個關(guān)閉的功能用來關(guān)閉它。
將Program.cs中代碼改為下面的內(nèi)容
添加的代碼為
public static bool isValidUser;
if (isValidUser == true)
{
Application.Run(new main());
}
登錄界面中添加三個Label控件,縱向排列;將其【Text】屬性分別修改為“用戶名:"、“密碼”、“用戶類型”
從【工具箱】中拖放兩個TextBox控件和一個ComboBox控件,將它們分別放在對應(yīng)的Label控件的右邊,并且將它們的【Name】屬性分別改為"textBoxUserName",“textBoxPassword”,
“comboBoxLoginType”。
再添加一個CheckBox控件,將其【Text】屬性修改為"自動登錄"
-繼續(xù)從【工具箱】中向窗體拖放兩個Button控件,并且將分別將其【Name】屬性改為“buttonOK”和“buttonCancel”,【Text】屬性分別改為“確定”和“取消”。
用鼠標(biāo)雙擊【確定】按鈕控件,讓其自動添加Click事件,然后將事件代碼改為下面內(nèi)容:
private void buttonOK_Click(object sender, EventArgs e)
{
Program.isValidUser = true;
this.Close();
}
同樣用鼠標(biāo)雙擊【取消】按鈕控件,讓其自動添加Click事件,然后將事件代碼改為下面內(nèi)容:
private void buttonCancel_Click(object sender, EventArgs e)
{
Program.isValidUser = false;
this.Close();
}
以上代碼的含義是:點擊“確定”,彈出下一個界面main;點擊取消,關(guān)閉登錄界面
將按鈕事件代碼改完后,我們再在構(gòu)造函數(shù)中添加下面的內(nèi)容:
comboBoxLoginType.Items.AddRange(new object[] { "中文-簡體", "English-US" });
comboBoxLoginType.SelectedIndex = 0;
這段代碼是為了添加下拉框的選項,完成這些后按【F5】,運行效果如下:
添加新的窗體
Ctrl+Shift+A,在彈出框中選擇【W(wǎng)indows窗體】,命名為OtherForm.cs
打開main.cs的設(shè)計界面,設(shè)計主窗體的功能。
界面設(shè)計如下:
按照login.cs的設(shè)計界面的設(shè)計步驟進(jìn)行設(shè)計,將第一個Label控件的【AutoSize】屬性改為"False",【BorderStyle】屬性改為“Fixed3D”【TextAlign】屬性改為“MiddleCenter”
將“姓名”后面的textBox的【Name】屬性修改為“textBoxName”
將“基本信息”后面的textBox的【Name】屬性修改為“textBoxBaseInfo”
將“其他信息”后面的textBox的【Name】屬性修改為“textBoxOtherInfo”
其他控件屬性按之前的方法設(shè)置即可。
分別將“自動填寫文本框”、“彈出對話框”和“彈出新窗體”這三個按鈕的【Name】屬性修改為:“buttonFillText”、“buttonShowDialog”、"buttonShowNewForm"進(jìn)行雙擊,讓其自動添加對應(yīng)的Click事件代碼,并修改代碼如下:
private void buttonFillText_Click(object sender, EventArgs e)
{
textBoxName.Text = "姜山";
textBoxBaseInfo.Text = "男,27歲";
textBoxOtherInfo.Text = "業(yè)余愛好,籃球";
}
private void buttonShowDialog_Click(object sender, EventArgs e)
{
MessageBox.Show("OK");
}
private void buttonShowNewForm_Click(object sender, EventArgs e)
{
OtherForm otherForm = new OtherForm();
otherForm.ShowDialog();
}
在OtherForm.cs界面添加TabControl控件
設(shè)置Dock
在屬性中找到TabPage屬性
點擊帶有三個省略號的按鈕,進(jìn)入選項卡的編輯界面,即tabPage集合編輯器,在該界面中可以添加、刪除、選項卡,以及調(diào)整選項卡的位置、編輯選項卡的屬性,如下圖
也可在代碼中對選項卡進(jìn)行動態(tài)編輯,如添加、刪除選項卡的代碼為:
隱藏TabControl的選項卡標(biāo)簽
在***.Designer.cs中添加以下代碼
//隱藏選項卡選頭
//方法一
tabControl1.SizeMode = TabSizeMode.Fixed;
tabControl1.ItemSize = new Size(0, 17);
tabControl1.Appearance = TabAppearance.FlatButtons;
//方法二
this.tabControl1.Region = new Region(new RectangleF(this.tabPage1.Left,
this.tabPage1.Top, this.tabPage1.Width, this.tabPage1.Height));
原文鏈接:https://blog.csdn.net/Scarlett2025/article/details/118189191
相關(guān)推薦
- 2022-09-13 C#?wpf使用ListBox實現(xiàn)尺子控件的示例代碼_C#教程
- 2023-07-27 Android啟動優(yōu)化之布局優(yōu)化
- 2022-08-05 C#實現(xiàn)動態(tài)數(shù)字時鐘和日歷_C#教程
- 2021-12-14 如何利用C語言輸出3D立體感心形圖詳解_C 語言
- 2023-04-01 c++實現(xiàn)堆排序的示例代碼_C 語言
- 2022-07-29 Golang?統(tǒng)計字符串中數(shù)字字母數(shù)量的實現(xiàn)方法_Golang
- 2022-01-16 span設(shè)置寬高無效
- 2022-05-11 RabbitMq工作模式深度剖析與Spring整合MQ
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支