版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Windows窗体与控件Windows窗体与控件1内容简介Windows窗体是以.NETFramework为基础的一个新平台,主要用来开发Windows应用程序。一个Windows应用程序通常由窗体对象和控件对象构成,即使开发一个最简单的Windows应用程序,也必须了解窗体对象和控件对象的使用。先主要介绍Windows窗体的结构和常用属性、方法与事件,以及Label、LinkLabel、TextBox、Button几种常用控件的使用。内容简介Windows窗体是以.NETFramework2窗体
窗体(Form)就是平常所说的窗口,各种控件对象必须建立在窗体上。窗体对象是VisualC#应用程序的基本构造模块,是运行应用程序时与用户交互操作的实际窗口。窗体有自己的属性、方法和事件,用于控制其外观和行为。窗体的结构窗体是包含所有组成程序用户界面的其他控件的对象。在创建Windows应用程序项目时,VisualStudio2010会自动提供一个窗体,其组成结构如下图所示。窗体窗体(Form)就是平常所说的窗口,各种控件对象必须建3窗体的结构窗体的结构
窗体的结构窗体的结构4窗体的结构在创建Windows应用程序时,VisualStudio2010会将窗体文件命名为Form1.cs,建议编程人员将其改为能够描述程序用途的名称。提示:将应用程序的窗体文件名改为能够描述程序用途的名称,是一个良好的编程习惯。窗体的结构在创建Windows应用程序时,VisualSt5窗体的属性窗体有一些表现其特征的属性,可以通过设置这些属性控制窗体的外观。属性值的设置有两种方式:一种是在设计程序时,通过属性窗口实现;一种是在运行程序时,通过代码实现。通过代码设置属性的一般格式是:
对象名.属性名=属性值;窗体的属性窗体有一些表现其特征的属性,可以通过设置这些属性6窗体的方法窗体具有一些方法,调用这些方法可以实现特定的操作。窗体常用的方法如下表所示。窗体的方法窗体具有一些方法,调用这些方法可以实现特定的操作7窗体的方法关闭窗体与隐藏窗体的区别在于:关闭窗体是将窗体彻底销毁,之后无法对窗体进行任何操作;隐藏窗体只是使窗体不显示,可以使用Show或ShowDialog方法使窗体重新显示。模式窗体与非模式窗体的区别在于:模式窗体,在其关闭或隐藏前无法切换到其他窗体;非模式窗体,则可以在窗体之间随意切换。调用方法的一般格式为:对象名.方法名(参数列表)。如果要对调用语句所在的窗体调用方法,则用this关键字(表示当前类的对象)代替对象名,即:
this.方法名(参数列表);在面向对象的程序设计中,还有一种特殊的的方法叫静态方法,这种类型的方法通过类名调用。调用的一般格式为:
类名.静态方法名(参数列表);窗体的方法关闭窗体与隐藏窗体的区别在于:关闭窗体是将窗体彻8窗体的事件窗体作为对象,能够执行方法并对事件做出响应。窗体的常用事件,如下表所示。 窗体的事件窗体作为对象,能够执行方法并对事件做出响应。窗体9窗体的事件如果要为窗体对象添加事件处理程序,首先在设计器窗口选中窗体对象,然后在属性窗口的事件列表中找到相应的事件并双击它,即可在代码窗口看到该窗体的事件处理程序。以Form1的Load事件为例,其事件处理程序的格式为:privatevoidForm1_Load(objectsender,EventArgse){
//程序代码}其中,Form1_Load是事件处理程序的名称,所有对象的事件处理程序默认名称都是“对象名_事件名”;所有对象的事件处理程序都具有sender和e两个参数,参数sender代表事件的源,参数e代表与事件相关的数据。 窗体的事件如果要为窗体对象添加事件处理程序,首先在设计器窗10创建应用程序的操作界面应用程序的操作界面由各个对象组成,创建操作界面就是在窗体上绘制代表各个对象的控件。1.添加控件2.选择控件3.调整控件的尺寸和位置4.对控件进行布局5.设置所有控件的Tab键顺序索引6.锁定所有控件
创建应用程序的操作界面应用程序的操作界面由各个对象组成,创11创建应用程序的操作界面1.添加控件向窗体中添加一个控件的步骤如下(以按钮为例):(1)单击【工具箱】中的“公共控件”选项卡,出现各种控件。(2)将鼠标移到Button控件上单击,然后移到中间的窗体,这时会看到鼠标指针变成十字线的形状。(3)将十字线放在窗体的适当位置,单击窗体并按住左键不放,拖动鼠标画出一个矩形。(4)松开左键,会看到一个Button控件被创建在窗体上。
提示:向窗体中添加控件的另一个简单方法,是双击工具箱中的控件。这样会在窗体的默认位置创建一个具有默认尺寸的控件,然后可以将该控件移到窗体中的其他位置。创建应用程序的操作界面1.添加控件12创建应用程序的操作界面2.选择控件一个窗体上通常有多个控件,可以一次选择一个或多个控件。如果要选择一个控件,用鼠标在该控件上单击,即可选中该控件。如果要选择多个控件,常用的方法有两种。一种方法是先选择第一个控件,然后按下Shift键(或Ctrl键)不放,用鼠标依次单击要选择的其他控件,选择完毕后松开鼠标即可;另一种方法是在窗体的空白位置,单击窗体并按住左键不放,拖动鼠标画出一个矩形,然后松开鼠标,则该矩形区域内的控件都会被选中。如果要撤销被选择的多个控件中的某个控件,只需按住Shift(或Ctrl键)不放,用鼠标单击要撤销选择的被选择控件。创建应用程序的操作界面2.选择控件13创建应用程序的操作界面3.调整控件的尺寸和位置调整控件的尺寸和位置,可以通过设置控件的相应属性来实现。但在要求的精确度不高的情况下,最快捷的方法是在窗体设计器中直接用鼠标调整控件的尺寸和位置。用鼠标调整控件尺寸的步骤如下:用鼠标单击需要调整尺寸的控件,选定的控件上出现8个尺寸手柄。(2)将鼠标指针定位到尺寸手柄上,当鼠标变为双向箭头时按下鼠标左键,拖动该尺寸手柄直到控件达到所希望的大小为止。控件角上的4个尺寸手柄可以同时调整控件水平和垂直方向的大小,而边上的4个尺寸手柄调整控件一个方向的大小。(3)松开鼠标左键。
提示:也可按Shift键加上箭头键,来调整选定控件的尺寸。创建应用程序的操作界面3.调整控件的尺寸和位置14创建应用程序的操作界面3.调整控件的尺寸和位置用鼠标调整控件位置的步骤如下:(1)将鼠标指向要移动的控件,当鼠标变为十字箭头时,按下鼠标左键不放。(2)用鼠标把该控件拖动到新位置。(3)松开鼠标左键。提示:也可以通过键盘来调整选定控件的位置。每按一次箭头键,控件移动一个像素;如果按Ctrl键加上箭头键,控件每次移动一定的距离(多个像素),来与其它控件对齐。创建应用程序的操作界面3.调整控件的尺寸和位置15创建应用程序的操作界面4.对控件进行布局对控件进行布局,可以通过【格式】菜单或工具栏实现。如果格式工具栏没有显示,可以通过【视图】菜单下的“工具栏|布局”命令来显示格式工具栏。格式工具栏如下图所示。图3.4格式工具栏布局的内容包括对齐、大小、间距、叠放次序等。当多个控件被同时选中时,控件的所有布局功能都可用;只有一个控件被选中时,只有少数布局功能可用。创建应用程序的操作界面4.对控件进行布局16创建应用程序的操作界面5.设置所有控件的Tab键顺序索引Tab键顺序是指当用户按下Tab键时,焦点在控件间移动的顺序。每个窗体都有自己的Tab键顺序,每个控件在窗体上也都有唯一的Tab键顺序索引。默认状态下,控件在窗体上的Tab键顺序索引与建立控件的顺序一致。如果要设置窗体上控件的Tab键顺序索引,可以分别对每个控件设置其TabIndex属性,也可以集中设置所有控件的Tab键顺序索引。要集中设置所有控件的Tab键顺序索引,可以选择菜单【视图|Tab键顺序】命令。如果需要改变多个控件的Tab键顺序索引,按照想设置的顺序依次单击各个控件。【Tab键顺序】命令是一个切换命令,因此设置好所有控件的Tab键顺序索引之后,再次选择【Tab键顺序】命令即可结束Tab键顺序索引的设置。创建应用程序的操作界面5.设置所有控件的Tab键顺序索引17创建应用程序的操作界面6.锁定所有控件可以把窗体及该窗体上的所有控件进行锁定,锁定之后,窗体的尺寸及控件的位置和尺寸就无法通过鼠标或键盘操作来改变。锁定控件可以防止已处于理想位置的控件因为不小心而被移动。如果要进行锁定操作,在窗体编辑区的任意位置右击,从弹出的快捷菜单中选择【锁定控件】命令即可。本操作只锁定选定窗体上的全部控件,不影响其他窗体上的控件。如果要调整锁定控件的位置和尺寸,可以在【属性】窗口中改变控件的Location和Size属性。【锁定控件】命令是一个切换命令,因此,再次选择【锁定控件】命令即可解除锁定。创建应用程序的操作界面6.锁定所有控件18常用控件(一)
最常用的基本控件——标签、链接标签、文本框、按钮标签LabelLabel(标签)控件的功能是显示不能编辑的文本信息,一般用于在窗体上进行文字说明。标签有Name(名称)、AutoSize(自动尺寸)、BackColor(背景色)、BorderStyle(边框)、Enabled(可用)、Font(字体)、ForeColor(前景色)、Image(图像)、Location(位置)、Locked(锁定)、Size(尺寸)、Text(文本)、TextAlign(文本排列)、Visible(可见)等属性。常用控件(一)最常用的基本控件——标签、链接标签、文本框、19标签Label1.设置标签的名称
任何对象都有名称,Name属性指示代码中用来表示对象的名称。要设置Label控件的名称,首先选择Label控件,然后在【属性】窗口中设置Name属性为某个标识符即可。例如,有一个要显示“学生姓名”文本的标签,可以设置其Name属性为lblStuName。2.设置标签的文本在Label中显示文本,使用Text属性。首先要选择Label控件,然后在属性窗口中设置该属性为某个字符串即可。Label控件中的文本默认的排列方式为靠上左对齐,通过设置TextAlign属性可以改变排列方式。TextAlign属性值是ContentAlignment枚举类型,共有9个枚举值,默认值是TopLeft。如果设置TextAlign为TopCenter,则靠上居中。标签Label1.设置标签的名称20标签Label3.设置标签的图像
Image属性用来设置在标签上显示的图像。当在属性窗口中设置该属性时,单击该属性条,右端出现“…”按钮后单击它,会打开【选择资源】对话框,如下图所示。标签Label3.设置标签的图像21标签Label3.设置标签的图像
提示:如果选择“本地资源”,程序运行时从指定位置的图像文件加载图像;如果选择“项目资源文件”,导入的图像文件会被复制到项目文件夹中的Resources文件夹下,程序运行时从Resources文件夹下的图像文件加载图像。如果在运行时设置Image属性,可以使用Image类的静态方法FromFile,格式如下:
对象名.Image=Image.FromFile(“pic1.jpg");
标签Label3.设置标签的图像22标签Label4.自动调整标签大小AutoSize(自动尺寸)属性决定标签文本能否根据文本大小自动调整标签大小。如果Label控件的AutoSize属性设置为True,则可根据Text属性指定文本自动调整标签的大小。如果AutoSize属性设置为False,则标签将保持设计时定义的大小,在这种情况下,如果文本太长,则只能显示其中的一部分。当文本超过Label控件的宽度时,文本会自动换行,但在超过控件的高度时,超出的部分将无法显示出来。标签Label4.自动调整标签大小23经常不断地学习,你就什么都知道。你知道得越多,你就越有力量StudyConstantly,AndYouWillKnowEverything.TheMoreYouKnow,TheMorePowerfulYouWillBe写在最后经常不断地学习,你就什么都知道。你知道得越多,你就越有力量写24谢谢大家荣幸这一路,与你同行It'SAnHonorToWalkWithYouAllTheWay演讲人:XXXXXX时间:XX年XX月XX日
谢谢大家演讲人:XXXXXX25Windows窗体与控件Windows窗体与控件26内容简介Windows窗体是以.NETFramework为基础的一个新平台,主要用来开发Windows应用程序。一个Windows应用程序通常由窗体对象和控件对象构成,即使开发一个最简单的Windows应用程序,也必须了解窗体对象和控件对象的使用。先主要介绍Windows窗体的结构和常用属性、方法与事件,以及Label、LinkLabel、TextBox、Button几种常用控件的使用。内容简介Windows窗体是以.NETFramework27窗体
窗体(Form)就是平常所说的窗口,各种控件对象必须建立在窗体上。窗体对象是VisualC#应用程序的基本构造模块,是运行应用程序时与用户交互操作的实际窗口。窗体有自己的属性、方法和事件,用于控制其外观和行为。窗体的结构窗体是包含所有组成程序用户界面的其他控件的对象。在创建Windows应用程序项目时,VisualStudio2010会自动提供一个窗体,其组成结构如下图所示。窗体窗体(Form)就是平常所说的窗口,各种控件对象必须建28窗体的结构窗体的结构
窗体的结构窗体的结构29窗体的结构在创建Windows应用程序时,VisualStudio2010会将窗体文件命名为Form1.cs,建议编程人员将其改为能够描述程序用途的名称。提示:将应用程序的窗体文件名改为能够描述程序用途的名称,是一个良好的编程习惯。窗体的结构在创建Windows应用程序时,VisualSt30窗体的属性窗体有一些表现其特征的属性,可以通过设置这些属性控制窗体的外观。属性值的设置有两种方式:一种是在设计程序时,通过属性窗口实现;一种是在运行程序时,通过代码实现。通过代码设置属性的一般格式是:
对象名.属性名=属性值;窗体的属性窗体有一些表现其特征的属性,可以通过设置这些属性31窗体的方法窗体具有一些方法,调用这些方法可以实现特定的操作。窗体常用的方法如下表所示。窗体的方法窗体具有一些方法,调用这些方法可以实现特定的操作32窗体的方法关闭窗体与隐藏窗体的区别在于:关闭窗体是将窗体彻底销毁,之后无法对窗体进行任何操作;隐藏窗体只是使窗体不显示,可以使用Show或ShowDialog方法使窗体重新显示。模式窗体与非模式窗体的区别在于:模式窗体,在其关闭或隐藏前无法切换到其他窗体;非模式窗体,则可以在窗体之间随意切换。调用方法的一般格式为:对象名.方法名(参数列表)。如果要对调用语句所在的窗体调用方法,则用this关键字(表示当前类的对象)代替对象名,即:
this.方法名(参数列表);在面向对象的程序设计中,还有一种特殊的的方法叫静态方法,这种类型的方法通过类名调用。调用的一般格式为:
类名.静态方法名(参数列表);窗体的方法关闭窗体与隐藏窗体的区别在于:关闭窗体是将窗体彻33窗体的事件窗体作为对象,能够执行方法并对事件做出响应。窗体的常用事件,如下表所示。 窗体的事件窗体作为对象,能够执行方法并对事件做出响应。窗体34窗体的事件如果要为窗体对象添加事件处理程序,首先在设计器窗口选中窗体对象,然后在属性窗口的事件列表中找到相应的事件并双击它,即可在代码窗口看到该窗体的事件处理程序。以Form1的Load事件为例,其事件处理程序的格式为:privatevoidForm1_Load(objectsender,EventArgse){
//程序代码}其中,Form1_Load是事件处理程序的名称,所有对象的事件处理程序默认名称都是“对象名_事件名”;所有对象的事件处理程序都具有sender和e两个参数,参数sender代表事件的源,参数e代表与事件相关的数据。 窗体的事件如果要为窗体对象添加事件处理程序,首先在设计器窗35创建应用程序的操作界面应用程序的操作界面由各个对象组成,创建操作界面就是在窗体上绘制代表各个对象的控件。1.添加控件2.选择控件3.调整控件的尺寸和位置4.对控件进行布局5.设置所有控件的Tab键顺序索引6.锁定所有控件
创建应用程序的操作界面应用程序的操作界面由各个对象组成,创36创建应用程序的操作界面1.添加控件向窗体中添加一个控件的步骤如下(以按钮为例):(1)单击【工具箱】中的“公共控件”选项卡,出现各种控件。(2)将鼠标移到Button控件上单击,然后移到中间的窗体,这时会看到鼠标指针变成十字线的形状。(3)将十字线放在窗体的适当位置,单击窗体并按住左键不放,拖动鼠标画出一个矩形。(4)松开左键,会看到一个Button控件被创建在窗体上。
提示:向窗体中添加控件的另一个简单方法,是双击工具箱中的控件。这样会在窗体的默认位置创建一个具有默认尺寸的控件,然后可以将该控件移到窗体中的其他位置。创建应用程序的操作界面1.添加控件37创建应用程序的操作界面2.选择控件一个窗体上通常有多个控件,可以一次选择一个或多个控件。如果要选择一个控件,用鼠标在该控件上单击,即可选中该控件。如果要选择多个控件,常用的方法有两种。一种方法是先选择第一个控件,然后按下Shift键(或Ctrl键)不放,用鼠标依次单击要选择的其他控件,选择完毕后松开鼠标即可;另一种方法是在窗体的空白位置,单击窗体并按住左键不放,拖动鼠标画出一个矩形,然后松开鼠标,则该矩形区域内的控件都会被选中。如果要撤销被选择的多个控件中的某个控件,只需按住Shift(或Ctrl键)不放,用鼠标单击要撤销选择的被选择控件。创建应用程序的操作界面2.选择控件38创建应用程序的操作界面3.调整控件的尺寸和位置调整控件的尺寸和位置,可以通过设置控件的相应属性来实现。但在要求的精确度不高的情况下,最快捷的方法是在窗体设计器中直接用鼠标调整控件的尺寸和位置。用鼠标调整控件尺寸的步骤如下:用鼠标单击需要调整尺寸的控件,选定的控件上出现8个尺寸手柄。(2)将鼠标指针定位到尺寸手柄上,当鼠标变为双向箭头时按下鼠标左键,拖动该尺寸手柄直到控件达到所希望的大小为止。控件角上的4个尺寸手柄可以同时调整控件水平和垂直方向的大小,而边上的4个尺寸手柄调整控件一个方向的大小。(3)松开鼠标左键。
提示:也可按Shift键加上箭头键,来调整选定控件的尺寸。创建应用程序的操作界面3.调整控件的尺寸和位置39创建应用程序的操作界面3.调整控件的尺寸和位置用鼠标调整控件位置的步骤如下:(1)将鼠标指向要移动的控件,当鼠标变为十字箭头时,按下鼠标左键不放。(2)用鼠标把该控件拖动到新位置。(3)松开鼠标左键。提示:也可以通过键盘来调整选定控件的位置。每按一次箭头键,控件移动一个像素;如果按Ctrl键加上箭头键,控件每次移动一定的距离(多个像素),来与其它控件对齐。创建应用程序的操作界面3.调整控件的尺寸和位置40创建应用程序的操作界面4.对控件进行布局对控件进行布局,可以通过【格式】菜单或工具栏实现。如果格式工具栏没有显示,可以通过【视图】菜单下的“工具栏|布局”命令来显示格式工具栏。格式工具栏如下图所示。图3.4格式工具栏布局的内容包括对齐、大小、间距、叠放次序等。当多个控件被同时选中时,控件的所有布局功能都可用;只有一个控件被选中时,只有少数布局功能可用。创建应用程序的操作界面4.对控件进行布局41创建应用程序的操作界面5.设置所有控件的Tab键顺序索引Tab键顺序是指当用户按下Tab键时,焦点在控件间移动的顺序。每个窗体都有自己的Tab键顺序,每个控件在窗体上也都有唯一的Tab键顺序索引。默认状态下,控件在窗体上的Tab键顺序索引与建立控件的顺序一致。如果要设置窗体上控件的Tab键顺序索引,可以分别对每个控件设置其TabIndex属性,也可以集中设置所有控件的Tab键顺序索引。要集中设置所有控件的Tab键顺序索引,可以选择菜单【视图|Tab键顺序】命令。如果需要改变多个控件的Tab键顺序索引,按照想设置的顺序依次单击各个控件。【Tab键顺序】命令是一个切换命令,因此设置好所有控件的Tab键顺序索引之后,再次选择【Tab键顺序】命令即可结束Tab键顺序索引的设置。创建应用程序的操作界面5.设置所有控件的Tab键顺序索引42创建应用程序的操作界面6.锁定所有控件可以把窗体及该窗体上的所有控件进行锁定,锁定之后,窗体的尺寸及控件的位置和尺寸就无法通过鼠标或键盘操作来改变。锁定控件可以防止已处于理想位置的控件因为不小心而被移动。如果要进行锁定操作,在窗体编辑区的任意位置右击,从弹出的快捷菜单中选择【锁定控件】命令即可。本操作只锁定选定窗体上的全部控件,不影响其他窗体上的控件。如果要调整锁定控件的位置和尺寸,可以在【属性】窗口中改变控件的Location和Size属性。【锁定控件】命令是一个切换命令,因此,再次选择【锁定控件】命令即可解除锁定。创建应用程序的操作界面6.锁定所有控件43常用控件(一)
最常用的基本控件——标签、链接标签、文本框、按钮标签LabelLabel(标签)控件的功能是显示不能编辑的文本信息,一般用于在窗体上进行文字说明。标签有Name(名称)、AutoSize(自动尺寸)、BackColor(背景色)、BorderStyle(边框)、Enabled(可用)、Font(字体)、ForeColor(前景色)、Image(图像)、Location(位置)、Locked(锁定)、Size(尺寸)、Text(文本)、TextAlign(文本排列)、Visible(可见)等属性。常用控件(一)最常用的基本控件——标签、链接标签、文本框、44标签Label1.设置标签的名称
任何对象都有名称,Name属性指示代码中用来表示对象的名称。要设置Label控件的名称,首先选择Label控件,然后在【属性】窗口中设置Name属性为某个标识符即可。例如,有一个要显示“学生姓名”文本的标签,可以设置其Name属性为lblStuName。2.设置标签的文本在Label中显示文本,使用Te
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 期末专题复习课内基础知识总结20242025学年语文九年级上册
- 2024年陕西省新安中心医院高层次卫技人才招聘笔试历年参考题库频考点附带答案
- 2024年泉州工程职业技术学院高职单招语文历年参考题库含答案解析
- 2024年防城港市妇幼保健院高层次卫技人才招聘笔试历年参考题库频考点附带答案
- 2024年河北软件职业技术学院高职单招职业适应性测试历年参考题库含答案解析
- 2024年长治市商业医院高层次卫技人才招聘笔试历年参考题库频考点附带答案
- 2024年江西农业工程职业学院高职单招职业技能测验历年参考题库(频考版)含答案解析
- 2024年江苏商贸职业学院高职单招职业适应性测试历年参考题库含答案解析
- 二零二五年度铁路旅客运输安全管理合同
- 2024年昆明铁道职业技术学院高职单招职业适应性测试历年参考题库含答案解析
- 居家办公培训课件
- (规划设计)家具产业园项目可行性研究报告
- 2024中国诚通控股集团限公司总部招聘11人易考易错模拟试题(共500题)试卷后附参考答案
- 2025初级会计理论考试100题及解析
- 2024届高考英语词汇3500左右
- 绩效管理数字化转型
- 2025年山东省高考数学模拟试卷(附答案解析)
- 公司组织架构图(可编辑模版)
- 陕西省铜川市各县区乡镇行政村村庄村名居民村民委员会明细
- 北师大版七年级数学上册教案(全册完整版)教学设计含教学反思
- 浙江省公务员考试面试真题答案及解析精选
评论
0/150
提交评论