C#Windows Forms窗体、按钮-xdd
1.更换窗体图标
方法:单击窗体,更改icon属性。
2.调整窗体打开时默认位置
方法:单击窗体,更改StartPotion属性。
3.修改窗体大小
方法:单击窗体,更改Size属性。
4.设置窗体的背景图片
方法:单击窗体,更改BackgroundImage属性。
5.打开新窗体
首先新建一个窗体 然后
Form2 frm2 = new Form2(); frm2.Show(); this.Hide();
6.单击窗体事件Click
首先在窗体属性事件中双击Click
MessageBox.Show("已经单击了窗体");//弹出提示框
7.窗体加载事件Load
例如:窗体在打开时,弹出提示框,询问是否查看窗体
if (MessageBox.Show("是否查看窗体?", "", MessageBoxButtons.YesNo, MessageBoxIcon.Information) == DialogResult.Yes)
{
}
8.窗口关闭事件FormClosing
DialogResult dr = MessageBox.Show("是否确定要关闭窗体", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);//创建了一个对话框
if (dr == DialogResult.Yes)
{
e.Cancel = false;//如果单击“是”,则关闭窗体
}
else //否则
{
e.Cancel = true;//如不执行操作
}
2019-07-24 22:01:12 write by xdd
9.MDI窗体(多文档界面)
下面将在父窗体中添加一个MenuStrip菜单,增加四个选项【打开子窗体,水平排列,垂直排列,层叠】
另注意Show方法和ShowDialog的区别是后者打开后,其它窗体会冻结。
namespace MDI窗体练习
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void 加载子窗体ToolStripMenuItem_Click(object sender, EventArgs e)
{
Form frm2 = new Form2();
frm2.MdiParent = this;
frm2.Show();
Form frm3 = new Form3();
frm3.MdiParent = this;
frm3.Show();
Form frm4 = new Form4();
frm4.MdiParent = this;
frm4.Show(); } private void 水平平铺ToolStripMenuItem_Click(object sender, EventArgs e)
{
LayoutMdi(MdiLayout.TileHorizontal);
} private void 垂直平铺ToolStripMenuItem_Click(object sender, EventArgs e)
{
LayoutMdi(MdiLayout.TileVertical);
} private void 层叠排列ToolStripMenuItem_Click(object sender, EventArgs e)
{
LayoutMdi(MdiLayout.Cascade);
}
}
}
<窗体篇结束>
write by xdd 2019-07-25 23:49:37
10.控件介绍
10.1文本框Textbox
10.1.1 设置文本框Textbox的readonly属性使其为只读而不能编辑。
10.1.2 设置文本框的PasswordChar属性使其向输入密码一样以星号代替(在其属性框里输入*即可)
10.1.3 设置文本框的Multiline属性使其能输入多行数据
10.1.4 当文本框的内容被更改,会触发文本框的TextChanged事件
10.1.5 控件的名字写法:
控件.Text 如 label1.Text=textBox1.Text
10.2复选框CheckBox
10.2.1复选框CheckBox的CheckState属性返回值有Checked与Unchecked
10.2.2当复选框的状态变化时,会触发其CheckStateChanged事件。
一个选课信息的案例
private void button3_Click(object sender, EventArgs e)
{
string strtop = "您选的课程如下:";
foreach(Control ctrl in this.Controls)//遍历窗体中的所有控件
{
if(ctrl.GetType().Name=="CheckBox") //判断是否为复选框 {
CheckBox cbox=(CheckBox)ctrl;
if (cbox.Checked)
{
strtop=strtop+"\n"+cbox.Text;
}//内层if的结束
} //外层if的结束 }//Foreach的结束
MessageBox.Show(strtop);
}
10.3 有格式文本框RichTextBox
10.3.1 调整ScrollBars属性以调整是否显示滚动条
10.3.2 利用RichTextBox制作网址超链接
10.4下拉组合框ComboBox
10.5 列表控件ListBox
10.5.1 向ListBox控件中添加或移除项
listBox1.Items.Add("语文");//添加项目
listBox1.Items.Remove("英语");//移除项目
10.5.2 设置SelectionMode为MultiExended可使用shift、ctrl、方向键实现多选
10.6 分组框控件GroupBox
10.7 树(分支)控件TreeView
10.7.1 在控件的nodes属性中可以直接建立分支
private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
label10.Text = "我选择" + e.Node.Text;
}
10.7.2 给分支加图片方法:
imageList1.Images.Add(Image.FromFile("1.png"));
treeView1.ImageLise=imageList1;
imageList1.ImageSize=new Size(,);
10.8 图片存储组件 ImageList
10.9 计时器Timer组件
10.10 <控件篇结束>
write by xdd 2019-07-27 00:47:19
11 菜单控件MenuStrip
12 工具栏控件ToolStrip
13 状态栏控件StatusStrip
14 对话框
14.1 消息框
MessageBox.Show(string text,string caption,MessageBoxButtons buttons,MessageBoxIcon icon);//内容,标题,按钮类型,图标(警告,问号,错误等)
MessageBox.Show("确定退出吗","警告",MessageBoxButtons.YesNo,MessageBoxIcon.Warning);
14.2 打开文件对话框OpenFileDialog
openFileDialog1.ShowDialog();
14.3 打开文件夹对话框FolderBrowserDialog
14.4 另存为对话框 SaveFileDiolag
<菜单、工具栏、对话框>
注:参考并推荐书籍
- 《零基础学C#》(明日科技编著)
- Windows Forms 2.0程序设计(原文为英文版:Windows Forms 2.0 Programming)
C#Windows Forms窗体、按钮-xdd的更多相关文章
- Windows Forms 窗体篇
1,显示窗体 非模式: Form form = new Form(); form.Show(); 模式: Form form = new Form(); form.Show(); 2,拥有者窗体与附属 ...
- C#Windows Forms (Demo.SYS)--xdd
private void Show_background_picture()//随机更换背景 { ";//默认值 Random ran = new Random(); , );//返回一个1 ...
- Windows Forms (一)
导读 1.什么是 Windows Forms 2.需要学Windows Forms 么? 3.如何手写一个简单的Windows Forms 程序 4.对上面程序的说明 5.Form 类与Control ...
- C#Windows Forms 计算器--xdd
一.计算器 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data ...
- DotNetBar for Windows Forms 12.9.0.0_冰河之刃重打包版及制作Visual Studio C#项目模板文件详解
关于 DotNetBar for Windows Forms 12.9.0.0_冰河之刃重打包版 --------------------11.8.0.8_冰河之刃重打包版-------------- ...
- System.Windows.Forms.Timer
一.主要属性.方法和事件 Windows 窗体 Timer 是定期引发事件的组件.该组件是为 Windows 窗体环境设计的. 时间间隔的长度由 Interval 属性定义,其值以毫秒为单位.若启用了 ...
- System.Windows.Forms.Control : Component, IOleControl, IOleObject, IOleInPlaceObject, IOleInPlaceActiveObject....
#region 程序集 System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 ...
- Windows Forms编程实战学习:第三章 菜单
第三章 菜单 1,控件和容器 所有的Windows Forms控件都是从System.Windows.Forms.Control类继承的,相关类的层次结构如下图所示: MarshalByRefObje ...
- Windows Forms编程实战学习:第一章 初识Windows Forms
初识Windows Forms 1,用C#编程 using System.Windows.Forms; [assembly: System.Reflection.AssemblyVersion(& ...
随机推荐
- mysql库表优化实例
一.SQL优化 1.优化SQL一般步骤 1.1 查看SQL执行频率 SHOW STATUS LIKE 'Com_%'; Com_select:执行SELECT操作的次数,一次查询累加1.其他类似 以下 ...
- Apollo学习笔记(一):canbus模块与车辆底盘之间的CAN数据传输过程
Apollo学习笔记(一):canbus模块与车辆底盘之间的CAN数据传输过程 博主现在从车载自组网信道分配和多跳路由转向了自动驾驶,没啥经验,想快些做出来个Demo还是得站在巨人的肩膀上才行,我选择 ...
- JdbcTemplate实现增删改查操作
JdbcTemplate介绍 为了使 JDBC 更加易于使用,Spring 在 JDBCAPI 上定义了一个抽象层, 以此建立一个JDBC存取框架,Spring Boot Spring Data-JP ...
- 设计模式(二)Adapter模式
Adapter模式也被成为Wrapper模式.适配器模式用于填补“现有的程序”和“所需的程序”之间差异的设计模式. Adapter模式有两种,即使用继承的适配器和使用委托的适配器. 1.使用继承的适配 ...
- 修改vuex状态机中的数据
vuex状态机中的数据是必须提交mutation来修改,如果现实开发中,我们需要修改,而又不想提交mutaition,应该怎么做呢? 先来回顾一下场景,有一个列表是存在vuex中的 这个列表展 ...
- 如何把当前时间戳转化为时间格式HH:MM:SS
获取当前时间戳 var timestamp = new Date().getTime() 获取当前时间(从1970.1.1开始的毫秒数) // 创建一个函数function timestampToTi ...
- Nginx、WSGI、 uWSGI、 uwsgi的区别
当我们部署完一个应用程序,浏览网页时具体的过程是怎样的呢?首先我们得有一个 Web 服务器来处理 HTTP 协议的内容,Web 服务器获得客户端的请求,交给应用程序,应用程序处理完,返回给 Web 服 ...
- 提高首屏页面加载速度,解决vue-cli打包后单个文件过大的问题
本教程是针对vue-cli3以上的版本,其实原理都大同小异,这个demo为vue-cli直接创建的项目,并在main.js中引入了echart.element-ui.lodash 首先看demo打包后 ...
- [windows篇] 使用Hexo建立个人博客,自定义域名https加密,搜索引擎google,baidu,360收录
为了更好的阅读体验,欢迎阅读原文.原文链接在此. [windows篇] 使用Hexo建立个人博客,自定义域名https加密,搜索引擎google,baidu,360收录 Part 2: Using G ...
- [考试反思]0910csp-s模拟测试42:追求
显而易见的暴力骗分. T1想到了bitset但是发现MLE后弃了,部分分都没拿. T2想到正解贪心打暴力过不了大样例弃了. T3牛逼题暴力. 考场没什么大失误,还可以. 不要轻易放弃每一个思路,可能再 ...