-
vb.net 教程 3-2 窗体编程之窗体 1
版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。
个人理解:windows系统是消息驱动型的系统,消息带来事件,事件引发处理。
比如按下按钮消息,引发按钮的Click事件,然后我们就需要编程处理这个事件。
整个系统就是围绕消息的处理进行的。
新建一个项目,选择 窗体应用程序
出来的窗体设计界面上,双击窗体,转入默认的 Form1_Load (假设窗体名称没有改变,是默认的Form1)事件的代码编辑。
例如加入以下代码:
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Me.Width = 400
Me.Height = 300
Console.WriteLine("窗体位置:{0},{1}", Me.Left, Me.Top)
Console.WriteLine("窗体大小:{0}*{1}", Me.Width, Me.Height)
Console.WriteLine("客户区域:{0},{1},{2},{3}",
Me.ClientRectangle.X, Me.ClientRectangle.Y,
Me.ClientRectangle.Width, Me.ClientRectangle.Height)
End Sub
那么就会在输出窗口输出我们想要显示的结果,之前我曾经谈到过Console.WriteLine在窗体应用程序时使用,会在输出窗口输出内容,而不是显示在命令行提示符下面,希望大家没有忘记。
一、先谈谈窗口上的区域:
1、显示窗口图标,需要设置Icon属性,不然只会显示默认的图标;设置ShowIcon=True,不然就不会显示图标。
2、窗口标题,在Text属性设置
3、系统菜单区域,如果标题栏有图标,那么单击那个图标就会出来这个菜单。
4、最小化按钮,如果MaximizeBox=False,则不会显示
5、最大化按钮,如果MinimizeBox=False,则不会显示
6、关闭按钮,都会显示,不过用api可以不显示出来。
7、工作区域,通常情况下都在这个区域放置控件、绘图等。
1、2、4、5、6,通常称为标题栏,如果设置属性FormBorderStyle=None,那么标题栏都不会显示
如果在代码中输入 Me.ControlBox = False ,那么1、4、5、6都不会显示,如图:
二、关键词 Me
个人理解:由于程序启动的时候,默认了一个窗体的新实例,用Me来代替了这个新实例。而Form1指的是一个类,
如果在代码中直接用Form1,那么就会有错误提示:
代码中甚至可以不要me,直接输入 Width = 400,也可以,不过不建议。
如果我们用一个变量来New了一个新的窗口,就可以用这个变量来操作新窗口了
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim formA As New Form2
formA.Show()
formA.ControlBox = False
End Sub
运行如图:
当然也可以用如下代码,但不推荐:
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Form2.Show()
Form2.ControlBox = False
End Sub
我隐约记得在vs2003中好像是不能这么写的,但是vs2005后又可以了。当然vb6的时候是可以的。
实际,再写代码的时候,输入Form2,系统认为这是一个类,但是我们可以继续输入后面的内容。
如图,可以看出,vs提示的内容里面实际是没有相应的属性的。
学习更多vb.net知识,请参看 vb.net 教程 目录
————————————————
版权声明:本文为CSDN博主「VB.Net」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/uruseibest/article/details/70231672
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
SQL Server -- 解决存储过程传入参数作为s
关于JS定时器的整理
JS中使用Promise.all控制所有的异步请求都完
js中字符串的方法
import-local执行流程与node模块路径解析流程
检测数据类型的四种方法
js中数组的方法,32种方法
前端操作方法
数据类型
window.localStorage.setItem 和 localStorage.setIte
如何完美解决前端数字计算精度丢失与数