1、
RAD工具( Rapid Application Development ) 快速应用开发工具;
Winform( WINDOWS Forms )
控件( Controls )是显示数据或接受数据输入的相对独立的用户界面(UI)元素.
Winform程序文件夹:
通过窗体代码转到窗体设计器:右键 查看窗体设计器( Shift+F7 );
引用命名空间没有使用,删除多余的命名空间:先择引用命名空间右键,对using进行删除和排序;
2、窗体程序结构:
static void Main() //程序入口点
{
Application.EnableVisualStyles(); //启用应用程序的可视样式
Application.SetCompatibleTextRenderingDefault(false); //用于新控件的默认值
Application.Run(new Form1()); //创建一个FORM1的对象
}
public partial class Form1 : Form //利用System.Windows.Forms.Form类派生的Form1
{
public Form1() //构造函数
{
InitializeComponent(); //一些参数的初始化
}
private void Form1_Load(object sender, EventArgs e)
{
}
}
private void InitializeComponent()
{
this.SuspendLayout();
//
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(239, 277);
this.Name = “Form1”;
this.Text = “Form1”;
this.Load += new System.EventHandler(this.Form1_Load);
this.ResumeLayout(false);
}
3、窗体属性:
设置窗体属性的两种方式:
- 通过属性面板(F4)
- 通过代码:窗体唯一标识名(Name).属性名=属性值.
AcceptButton:窗体的”接受”按钮,用户每次按”Enter”都相当于”单击”该按钮;
BackColor : 设置窗口背景颜色;
BackgroundImage : 设置窗口背景图案;
Cursor:鼠标光标模式;
Enabled:是否启动该控件;
HelpButton:显示帮助按钮(不能和最大化和最小化同时显示);
ShowIcon:窗体是否显示左上角图标;
Icon:左上角图标;
MainMenuStrip:为窗体指定主MenuStrip;
MaximumSize:最大化按钮;
minimumBox最小化按钮;
MaximumSize:最大化的尺寸;
MimimumSize:最小化的尺寸;
如果不希望用户鼠标改变窗口尺寸大小,则可以把窗体的最大化最小化的尺寸数值改为相同的固定值即可.
ShowInTaskbas:在任务栏上是否显示;
Size:默认运行时的窗体大小;
StartPosition:窗口默认运行的位置;
TopMost:是否置顶显示;
Visible:确定项是可见还是隐藏;
4、窗体的常用事件:
即发生的事件,简单理解为用户的操作,它由对象引发;
常用事件:
Load:窗体运行完成即为加载,窗体加载完成会触发事件;
Click:点击事件;
DoubleClick:双击事件;
FormClosed:窗体已经关闭事件;
KeyDown:键位被按下(保持);
KeyPress:键位被按下并释放;
KeyUp:键位被释放;
MouseClick:鼠标点击;
MouseDoubleClick:鼠标双击;
MouseDown:鼠标按键按下;
MouseHover:鼠标光标悬停;
MouseMove:鼠标移动窗体;
MouseUp:鼠标释放;
MouseEnter:鼠标进入控件的可见部分时发生;
5、窗体添加控件和窗体:
添加控件不仅能通过拖拉控件的方法,还可以通过代码添加,通过窗体的Controls类的Add方法:
窗体的标识名.Controls.Add(控件标识符);
窗体的显示和隐藏通过Show和Hide方法来进行实现的:
窗体标识名.Show;
窗体标识名.Hide;
DialogResult;获取对话框的返回值;
6、MDI窗体:
SDI窗体(single-document interface):单文档界面;
MDI窗体(multiple-document infterface):多文档界面,用于同一窗体同时显示多个文档;
[控件] Menustrip (菜单控件);
[属性] IsMdiContainer(是否为多重视窗):确定窗体是否为MDI容器;
窗体名.MdiParent = 父窗体;设置此窗体为父窗体的子窗体;
窗体名.BringToFront();窗体置顶显示;
ActiveMdiChild;获取当前活动MDI的子窗体;
LayoutMdi ( MdiLayout.TileHorizontal )
在MDI父窗体中排列MDI子窗体 ( 指定子窗体的布局.水平布局 );
Cascade 层叠布局;
TileHorizontal 垂直布局;
TileVertical 水平布局;
Close():关闭窗体;
7、控件的基本操作:
设置控件大小:控件名.Size = new Size(参数,参数);
设置控件位置:控件名.Location = new System.Drawing.Piont(参数,参数);
控件名.BringToFront();置于顶层
控件名.SendToBack;置于底层
8、文本控件:
文本控件包含标签控件(Label)、按钮控件(Button)、文本框控件(TextBox)和有格式文本控件(RichTextBox).
-
Label控件:是System.Windows.Forms.Label类提供的控件,显示文本;
-
Button控件:属性:FlatStyle:控件外观;
MessageBox.Show();快速输入MB+2次Tab;
随机数生成器:Random类,Next方法:指定范围返回一个随机数;
窗体Size和ClientSize的区别:
Size是整个窗体控件的大小,ClientSize是窗体的工作区域的尺寸大小;
在运行form时存储的是一个静态变量的form,如果需要使用它,则需要在一个类中新建一个静态变量的form,然后在form运行时的事件中存进这个变量当中;
- TextBox:输入文本框
TextBox控件上有一个箭头,MultiLine属性,多行属性;
常用属性:
Multiline:控制是否多行显示;
CharacterCasing:字母的大小写,normal为正常的,upper大写,lower小写;
Maxlength:最大的字符长度;
PasswordChar:设置密码掩盖的符号;
ReadOnly:只读;
ScrollBar:滚动条;
WordWrap:自动换行;
Text:默认文本框的内容;
AcceptsRetun:在多行编辑中是否允许输入回车;
常用事件:
TextChanged:更改Text的值时引发的事件;
方法:
Clear();清空
Focus();焦点位置
获取当前位置的索引值方法:
文本框名.GetFirstCharIndexOfCurrentLine(), 获取当前的索引值, 数值从0开始;
文本框名. GetLineFromCharIndex(index), 指定数值位置行数索引号, index是列数的位置;
文本框名. SelectionStart; 获取选定文本的索引值;
- RichTextBox:允许用户输入编辑文本的同时,提供比TextBox控件更高级的格式特征;
设置字体格式:
文本名.SelectionColor = Color.颜色:设置文本颜色;
文本名.SelectionFont = new Font(“字体格式”,”字体大小”):设置文本格式和大小;
文本名.SelectionBullet = true:设置项目符号;
文本名.SelectionBackColor = Color.颜色:设置底纹颜色;
9、Timer:定期引发事件的控件;
常用属性:
Enabled:使能;
Interval:触发时间,默认时间单位ms;
常用事件:
Tick:触发事件;
方法:start、stop方法;
Timer的Interval最小可以设置17-18,再小的话误差就比较大了;
10、选择类控件:
- CheckBox:多选类控件;
属性:
Checked:复选框被选中;
Unchecked:复选框没有被选中;
Indeterminate:复选框不可选;
设置字体属性:
CheckBox.Font = new Font(CheckBox.Font,FontStyle.字体属性| FontStyle.字体属性);
- RadioButton:单选类控件;
主要属性Checked;
TabStop:默认的初始焦点(或者说默认的选择);
11、组合框控件:
ComboBox:下拉组合框控件;
ListBox:列表形式显示的控件;
属性:SelectionMode:选择单选、多选、不可选择;
CheckedListBox:多选类列表控件;
Items属性:编辑集合内容;
控件名.SelectedItem.Tostring();获取当前选定的项;
12、NumericUpDown:
NumericUpDown:将一个数的值按照一定的值进行增加或减小;
常用属性:
Increment:每次单击按钮时增加或者减小的量;
Maximum:最大值;
Minimum:最小值;
Value:当前值;
DecimalPlaces:设置小数点位数;
方法:
UpButton():增大按钮;
DownButton();减小按钮;
13、分组类控件:
面板控件(Panel)、分组框控件(GroupBox)、选项卡控件(TabControl)等
-
panel:面板控件,主要作用就是将其他控件组合在一起放在一个面板上,使这些控件更容易管理;
属性:
BorderStyle:边框属性;
AutoScroll:当控件内容大于它可见区域时是否自动显示滚动条;
TopLevel:是否将窗口设置成顶级窗口;
FormBorderStyle:窗体的边框和标题栏的外观和行为;
this.panel.Controls.Add(窗口);将控件添加到控件集合中;
方法:
BringToFront():放置在最前端; -
GroupBox:分组框控件,为其他控件提供可识别的分组;
Control,定义控件的基类;
Controls,定义控件的集合; -
Tabcontrol:选项卡控件,将相关的组件组合到一系列的选项卡页面上;
属性:
Multiline:选项卡是否一次显示出;
Appearance:选项卡的效果类型;
TabPages:TabPages集合编辑器;
SelectedIndex:选项卡索引号,从0开始;
SelectedTab:选项卡名称;
//TabControl控件管理TabPages集合;
事件:
SelectedIndexChanged:属性值更改时发生;
- MenuStrip:菜单控件,是应用程序菜单结构的容器;
&+字母,设置字母下划线;
属性:
ShortcutKeys:设置菜单相关联的快捷键;
ContextMenuStrip:创建窗体右击显示的菜单;
选择编辑之后需要在使用者属性”ContextMenuStrip”选择上;
ToolTip:工具提示;
编辑之后要在使用者属性”ToolTip1上的ToolTip”上编辑显示的文本;
属性:
InitialDealy:初始化延迟时间;
IsBalloon:气泡的显示方式;
-
ToolStrip:工具栏;
属性:
AllowItemRecorder:当按下Alt时,允许对项进行排列;
Dock:定义控件的绑定位置;
LayoutStyle:定义布局方向;
GripStyle:定义手柄的可见性;
Items:显示项的集合编辑器;
ShowItemToolStrip:显示工具项的提示文本Text; -
StatusStrip:状态栏,通常用于显示应用程序当前状态的简短信息;
可以使用的控件:
StatusLabel、DropDownButton、ProgressBar、SplitButton;
属性:
Spring:指定项是否填满剩余空间;