《Visual Basic程序设计》课件1第3章_第1页
《Visual Basic程序设计》课件1第3章_第2页
《Visual Basic程序设计》课件1第3章_第3页
《Visual Basic程序设计》课件1第3章_第4页
《Visual Basic程序设计》课件1第3章_第5页
已阅读5页,还剩99页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第3章VB可视化编程基础3.1窗体

3.2命令按钮

3.3标签

3.4文本框

3.5图片框(PictureBox)和图像框(Image)

3.6工程及工程文件管理

教学小结

习题

3.1窗体

3.1.1常用属性

1.Caption

Caption属性用于设置或获得窗体标题栏文本,该属性可以是任意字符串。

2.Picture

Picture属性用于设置窗体的背景图片。当在设计模式下设置时,只需单击属性窗口中的Picture设置框右边的“…”按钮,打开“加载图片”对话框,选择一个图形文件即可。如果在代码中设置或改变背景图片,可使用以下语句:

对象.Picture=LoadPicture("图片文件名")

3.BorderStyle

BorderStyle属性用于设置窗体边框样式。其属性值在运行时不能修改,只能在设计模式下通过属性窗口修改。BorderStyle属性的设置值如表3-1所示。表3-1窗体BorderStyle(边框样式)属性取值

4.ControlBox

ControlBox属性用于设置窗体标题栏是否有控制菜单和最大/最小化按钮。当值为True时,窗体的最大/最小化属性有效;当值为False时,窗体标题栏没有控制菜单和最大/最小化按钮。

5.MaxButton/MinButton

MaxButton/MinButton属性与ControlBox属性配合确定窗体上是否存在最大/最小化按钮或最大/最小化按钮的状态。

(1)当两者的值均为True时,窗体有最大/最小化按钮。

(2)当值均为False时,窗体没有最大/最小化按钮。

(3)当两者其中之一为False,则对应的按钮以灰色显示,表示不可用。

6.AutoRedraw

AutoRedraw属性用于设置窗体的自动重绘功能。当值为Flase时,用Print、Circle等方法输出到窗体上的内容被挡后,窗体重新显示时那些内容不能显示;而当值为True时,窗体重新显示时那些内容会被自动重画到窗体上。

7.WindowsState

WindowsState属性用于设置窗口的状态属性,设置值如表3-2。表3-2窗体WindowsState(窗口状态)属性取值3.1.2主要事件

1.Load事件

Load事件在窗体被载入时引发。当应用程序只有一个窗体时,应用程序启动时就会自动执行该事件中的代码,若非专门调用,此事件中的代码只被执行一次。所以该事件通常用来在启动应用程序时,设置对象属性的初始属性值和为变量赋初值。本书中的很多例题中的对象属性设置就放在窗体的Load事件中。

2.Click事件

Click事件很容易理解,就是在窗体上单击(Click)鼠标左键时发生的事件。

例3-1

窗体的Click事件练习。

这里要注意代码录入方法,双击窗体,进入代码窗口,默认事件是窗体的Load事件。可在代码窗口的右上角事件

列表框中单击所需事件,在相应事件的过程中录入代码。如图3-1中选中Click事件,在窗体的Click事件过程中录入代码:图3-1在事件列表框中选择事件3.1.3常用的方法

窗体常用的方法有Print、Cls、Refresh、Line、Circle等,本小节只介绍前两种方法。

1.Print方法

Print方法的功能是在指定对象上输出信息,这里所说的对象是指窗体(Form)、图片框(PictureBox)、打印机(Printer)或立即窗口(Debug)。

Print方法的格式如下:

[对象名].Print[Tab(n)]输出项列表[;|,]

2.Cls方法

Cls方法用于清除使用Print、Line等方法输出到窗体或图片框中的内容。

例3-2Print和Cls方法练习。

新建一个工程,在窗体(Form1)中添加2个命令按钮Command1、Command2,其标题属性在窗体的Load事件中设置。程序代码如下:运行该应用程序后,窗体的Load事件首先被自动执行,完成对窗体、两个命令按钮的标题进行设置,等待事件发生。当单击“显示”后,结果如图3-2所示;单击“清除”可以清除窗体上用Print方法输出的全部内容。图3-2Print方法和Cls方法举例 3.2命令按钮

在Windows应用程序中,命令按钮(CommandButton)常用来确认用户的操作,它是用户和程序实现交互的最简单方法之一,应用十分广泛。

在程序运行过程中,常用以下方法选中命令按钮:

(1)鼠标单击。

(2)按Tab键将焦点移到相应的按键上,按回车键。

(3)如果命令按钮设置了热键,使用热键(Alt + 字母)。

命令按钮的主要属性包括Caption、Style、Picture和ToolTipText,常用事件是Click。3.2.1常用属性

1. Caption

Caption属性主要用于设置按钮标题文本,可用“&字母”的形式为命令按钮设置热键字母。命令按钮还可以用图片代替文字做标题,这时Style属性应设为图形方式。

2. Style

Style用于决定按钮上是否显示图形,其属性值如表3-3所示。表3-3Style属性取值表

3. Picture

Picture属性为命令按钮添加背景图片(图片文件的格式为 .bmp或 .ico)。该属性值设置是否有效,取决于Style属性的设置。当Style属性设置为1,该属性设置为图形显示;Style属性设置为0时,则不显示。

4. ToolTipText

ToolTipText属性用于对按钮的作用做提示,属性值为一个字符串。程序运行时,当鼠标移动到按钮上,该字符串以黄色方框形式显示出来,如图3-3所示。图3-3ToolTipText属性应用举例3.2.2主要事件

命令按钮的主要事件是Click。下面通过实例说明命令按钮的应用。

例3-3

通过编程添加或清除窗体的背景图片。

新建一个工程,在窗体上添加2个命令按钮,如图3-4a所示,窗体和命令按钮的Caption属性在窗体的Load事件过程代码中设置。图3-4a例3-3窗体界面运行工程,界面如图3-4b所示。图3-4b例3-3运行界面

3.3标签

3.3.1常用属性

标签的主要属性有Caption、Font、Left、Top、BorderStyle(边框的样式:0为无边框,1为有边框)、BackStyle(背景样式:0为透明;1为不透明)、ForeColor、AutoSize等。

3.3.2主要事件

标签的主要事件有单击(Click)、双击(DblClick)和鼠标移动(MouseMove)等。

例3-4

在窗体上添加2个标签,制作如图3-5c所示的立体字。

立体字可通过对2个标题文本相同、颜色不同的标签错位重叠来实现。设计步骤如下:

(1)在窗体上添加2个标签(Label1、Label2),标签在窗体上的位置如图3-5a所示。图3-5a窗体界面启动窗体,通过窗体的Load事件设置属性后的窗体效果如图3-5b所示,单击Label2,Label1的Top及Left以Label2相应的属性值为基点而变化,两个标签重叠后,由于位置的错位及颜色的不同而形成了立体效果,结果如图3-5c所示。图3-5b启动窗体后的效果图3-5c单击Label2后的效果

3.4文本框

3.4.1常用属性

1.Text

Text属性用于存放文本框显示的内容。当程序执行时,用户在文本框中进行的键盘输入、编辑其内容的操作,实际上就是在对文本框的Text属性值进行处理。

2.Locked

Locked属性设置文本框内容是否可被编辑。其默认值为False,表示文本框没有锁定,可以对文本框的内容进行编辑;当值为True时,文本框的内容不可以编辑,只能用于显示。

3.MaxLength

MaxLength属性设置文本框中能够输入的正文的最大长度。默认值为0,表示可以输入任意长度。

4.MultiLine

MultiLine属性设置文本框是否可存放多行文本。当值为True时,文本框可输入或显示多行文本,且输入的字符长度超出文本框宽度时会自动换行,按回车键可将光标移到下一行。当值为False时,文本框只能输入一行内容。这个属性只能在设计时通过属性窗口设置。

5.ScrollBars

ScrollBars属性设置文本框是否具有滚动条。ScrollBars属性的取值及含义如表3-4所示。表3-4ScrollBars属性取值表

6.PassWordChar

PassWordChar属性指定显示文本框中的替代符。当PassWordChar值为“ * ”时,用户在键盘上每输入一个字符,在文本框中便显示一个“ * ”。该属性主要用于密码的输入。

7.SelStart、SelLength和SelText

SelStart:返回插入点前字符的个数。当插入点位于文本框第一个字符前时,该属性的返回值为0;当插入点位于文本框最后一个字符后时,该属性返回文本框的字符串长度。

SelLength:返回选定文本的长度(字符个数)。

SelText:返回选定文本的内容。3.4.2主要事件

1. GotFocus事件和LostFocus事件

当光标定位到文本框(获取焦点)时,引发文本框的GotFocus事件。当文本框失去焦点时引发LostFocus事件。

例3-5

在一个窗体上建立2个文本框,将获取焦点的文本框的背景设为红色,失去焦点的文本框的背景设为白色。

在窗体上建立2个文本框,位置如图3-6a所示,将2个文本框的Text属性值设置为空。图3-6a窗体布局运行程序,用Tab键或鼠标可以使焦点在两个文本框间来回切换,触发相应文本框的GotFocus和LostFocus事件,文本框的背景颜色会发生相应的变化,分别如图3-6b、图3-6c所示。图3-6bText1获得焦点时图3-6cText2获得焦点时

2.KeyPress事件

当用户按下并且释放键盘上的一个键时,就可能会引发焦点所在对象的KeyPress事件,同时将所按键的ASCII码值赋给事件过程参数KeyAscii,供程序员使用。例如,当用户按下字符“a”,则事件过程参数KeyAscii的值为97;若按下“A”,则KeyAscii的值为65;若按下回车键,则KeyAscii的值为13。

例3-6

在文本框中录入数据,捕获键盘每一个键的ASCII码。

通过键盘为文本框每录入一个字符,都会触发文本框的KeyPress事件,再通过KeyPress事件过程参数KeyAscii,得到按键字符的ASCII值。

实现步骤:在窗体上添加1个文本框和1个标签,摆放位置如图3-7a所示。Text1的Text属性值为空,Lable1的Caption为空,AutoSize为True。图3-7a窗体布局情况事件代码为:

PrivateSubText1_KeyPress(KeyAsciiAsInteger)

Label1.Caption="您刚按的那个字符的ASCII码是"&KeyAscii

EndSub

程序运行情况如图3-7b所示,当每按下一个键,标签就会显示这个键对应的ASCII值,读者可以将键盘上所有的键都按一遍,看一看每个键的ASCII码值是多少。图3-7b程序运行情况

3.Change事件

当文本框的内容发生改变时,会引发文本框的Change事件。

例3-7

编程实现在文本框中录入字符时,标签同步显示文本框中当前的字符数。

要实现标签中同步显示文本框中字符数,可在文本框的Change()下编写代码,利用Len函数获得文本框Text的属性值长度即可。在窗体上添加1个文本框、1个标签和2个命令按钮,放好位置,如图3-8a所示。图3-8a窗体布局图3-8b程序运行界面3.4.3主要方法

文本框的主要方法是SetFocus,该方法的作用是把光标移到指定的文本框中,使文本框获得焦点。其调用格式如下:

[对象名].SetFocus

例3-8

设计如图3-9a所示的录入界面,要求录入学生的信息(姓名、成绩和名次),其中若成绩(Text2)录入不符合要求,当光标离开文本框时,显示出错信息,并将光标重新定位到文本框。图3-9a窗体布局图3-9b运行效果

例3-9

设计程序,显示文本框中的光标位置、选中文本长度和内容。

(1)在窗体上分别添加3个标签、4个文本框,排列好位置,如图3-10a所示。图3-10a窗体布局

(2)在属性窗口中,设置文本框的MultiLine属性值为True;ScrollBars属性值为2-Vertical,其他属性参考图3-10b自行设置。由于一般选中操作是通过鼠标完成的,所以将代码写在文本框的MouseUp事件中(该事件是当在文本框中按下鼠标键,并将鼠标键抬起时触发)。图3-10b运行界面

3.5图片框(PictureBox)和图像框(Image)

图片框(PictureBox)和图像框(Image)对象均可以用来显示图像,它们支持的图像文件格式有位图( .bmp)、图标( .ico)、图元文件( .wmf)、增强型图元文件( .emf)、JPEG和GIF文件。

Image只能用于显示图片,它使用系统资源少,而且重新绘图的速度较快,可以延伸图片的大小以适应对象的大小。但Image支持的属性、事件和方法较PictureBox少一些。

PictureBox除了可以显示图像以外,还可以作为其他对象的容器,同时支持VB的图形方法。PictureBox虽然不能延伸图像以适应对象的大小,但可以自动调整对象的大小以显示完整的图像。

PictureBox与Image对象的主要属性分别见表3-5、表3-6。表3-5PictureBox的主要属性表3-6Image的主要属性

例3-10

在窗体上添加1个Image对象,当鼠标在对象上单击时,显示另一张图片,双击时清除图片。

(1)设计程序界面。

在窗体中添加1个图像框Image1。

(2)设置对象属性。

为对象Image1的Picture属性设置一个图片(如:C:\Windows\Backgrnd.gif,如图3-11所示)。图3-11Image控件示例

例3-11

在窗体中添加一个PictureBox对象,在PictureBox中输出文字和图形。

实现步骤如下:

(1)设计程序界面。

在窗体中添加图片框Picture1和命令按钮Command1、Command2,如图3-12a所示。图3-12a程序界面

(2)设置对象属性。

将对象Command1、Command2的Caption属性分别设置为“输出文字”、“输出图形”。

(3)编写事件代码。

PrivateSubCommand1_Click()

Picture1.Print"努力学好计算机" '输出文字方法

Picture1.FontSize=12 '设置字体图3-12b运行界面 3.6工程及工程文件管理

3.6.1工程的组成

工程文件的扩展名为“.vbp”,一个工程可以包括如下类型的文件。

(1)窗体文件,扩展名为“.frm”。一个工程默认包含一个窗体,一个窗体对应一个窗体文件。窗体文件包含窗体及控件属性值、窗体级的变量、事件过程以及用户自定义过程

代码。

(2)标准模块文件,可选项,扩展名为“.bas”。标准模块文件主要包含模块级的变量和外部过程的声明,用户自定义的、可供本工程内各窗体调用的过程。

(3)类模块的文件,可选项,扩展名为“.cls”。类模块文件用于创建含有方法和属性的用户自定义类。

(4)资源文件,可选项,扩展名为“.res”。资源文件包含着不必重新编辑代码就可以改变的位图、字符串和其他数据。3.6.2工程文件的基本操作

1.单个工程操作

在程序中只有单个工程的情况下,可以使用“文件”菜单中的命令来建立、打开及保存文件。

2.工程组操作

在程序中存在由多个工程组成的工程组时,“文件”菜单中的“保存工程”和“工程另存为”选项被自动修改为“保存工程组”和“工程组另存为”,其用法与保存工程文件相同。

在工程组中要建立一个新工程,可以采用下列方法之一:

方法一:在“文件”菜单中选择“添加工程”选项,并在对话框的“新建”选项卡中选择合适的工程文件类型。

方法二:在工具栏中选择“添加工程”的快捷按钮。3.6.3向工程中添加、移除及保存文件的操作

1.添加文件

向工程中添加文件的具体步骤如下:

(1)选择“工程”菜单中的“添加”选项,选择要添加的文件类型。

(2)在出现的对话框中,选择是添加现存的文件还是新建文件。

也可以在工程资源管理器窗口中单击鼠标右键,在弹出的对话框中进行菜单选择。

2.移除文件

在工程中移除一个文件时,可以先在工程资源管理器中选中要移除的文件,单击鼠标右键,在弹出的菜单中选择“移除”即可。

3.保存文件

如果需要单独保存工程中的某一个文件,可以在工程资源管理器中选中要保存的文件,单击鼠标右键即可保存。也可以选择“另存为”,换名保存为其他文件。3.6.4运行工程

在工程文件制作完成后,需要运行该程序看一下运行效果是否满足设计要求。如果只是简单地运行程序查看结果,不需要在其他环境下执行,可以在VB环境中使用解释性运行,本章前面的示例全部是解释性运行。

解释性运行步骤如下:

(1)设置启动工程。

(2)设置启动窗体。3.6.5生成 .exe文件

如果应用程序需要脱离VB开发环境运行,则必须生成可执行文件( .exe)。

生成可执行文件(.exe)的方法是:在系统菜单中选择“文件”菜单中的“生成[工程名].exe”选项,在弹出的对话框中选择 .exe文件的存放位置并输入文件名,单击“确定”按钮即可。生成 .exe文件后,通过Windows资源管理器窗口查看所生成的可执行文件,双击文件图标即可运行。

教学小结

本章所涉及的是VB程序设计最基本的内容,也是可视化界面设计的入门部分,在学习中不能掉以轻心,要有自信心和坚韧不拔的毅力,要善于思考、勤于动手。

(1)工具箱中提供了20个标准控件类,最基本的莫过于命令按钮、标签、文本框控件和图片框等,应围绕控件的作用、常用属性、事件过程和方法这条主线学习,并精学实例,以加强对基础知识的理解。

(2)窗体是VB程序最重要的组成要素,它既是容纳其他对象的容器,又是一个特殊的对象。和其他控件对象一样,窗体也有属性、事件过程和方法。特别是窗体的Print方法,是程序运算结果输出的重要方法,应重点掌握。

(3) VB系统以工程的形式管理工程中的相关文件,工程文件记录了该工程内的所有文件(窗体文件、标准模块文件、类模块文件等)的名称和所存放在磁盘上的路径。学习中应加强工程文件和窗体文件的建立、打开、保存和另存等基本操作学习,多窗体工程还应掌握设置“启动对象”的方法,工程组文件需掌握“设置启动工程”的方法。

(4) VB是一个庞大的系统,在有限的教学时间内不可能做到面面俱到,VB系统的联机帮助系统永远是“无声的老师”,它会通过语法说明、示例代码引导读者进一步学习。

习题

一、选择题

1.要使在Form_Load事件中用Print方法输出的内容显示在窗体上,既可以在Print方法前先使用Show方法,也可对窗体的

属性进行设置。

(A) BackColor (B) ForeColor

(C) AutoRedraw (D) Caption

2.要判断在文本框内是否按下了回车键,最好在文本框的

事件过程进行判断。

(A) Change (B) Click

(C) KeyPress (D) GotFocus

3.要使标签对象显示时不覆盖其背景内容,要对

属性进行设置。

(A) BackColor (B) BorderStyle

(C) ForeColor (D) BackStyle

4.若要使命令按钮显示但不可操作,应对

属性设置。

(A) Enabled (B) Visible

(C) BackColor (D) Caption

5.文本框没有

属性。

(A) Enabled (B) Visible

(C) BackColor (D) Caption

6.不论何种对象,共同具有的是

属性。

(A) Text (B)名称

(C) ForeColor (D) Caption

7.要使Forml窗体的标题栏显示“欢迎使用VB6.0”,以下的

语句是正确的。

(A) Forml.Caption=“欢迎使用VB6.0”

(B) Forml.Caption=‘欢迎使用VB6.0’

(C) Forml.Caption=欢迎使用VB6.0

(D) Forml.Caption="欢迎使用VB6.0"

8.要使某对象在运行时不可显示,应对

属性进行设置。

(A) Enabled (B) Visible

(C) BackColor (D) Caption

9.要使窗体在运行时不可改变大小,只要对其

属性设置就有效。

(A) MaxButton (B) BorderStyle

(C) Width (D) MinButton

10.当运行程序时,系统自动执行启动窗体的

事件过程。

(A) Load (B) Click

(C) UnLoad (D) GotFocus

11.文本框的ScrollBars属性设置了非零值,却没有出现滚动条,原因可能是

(A)文本框中没有内容

(B)文本框的MultiLine属性为False

(C)文本框的Locked属性为True

(D)文本框的MultiLine属性为True

12.下列可以把当前目录下的图形文件pic1.jpg装入图片框Picture1中的语句为

(A) Picture1.Handle="pic1.jpg"

(B) Picture=Loadpicture("pic1.jpg")

(C) Picture="pic1.jpg"

(D) Picture1.picture=Loadpicture("pic1.jpg")

13.假定已在窗体上画了多个控件,并有一个控件是活动的,为了在属性窗口中设置窗体的属性,预先应执行的操作是

(A)单击窗体上没有控件的地方

(B)单击任一个控件

(C)不用执行任何操作

(D)双击窗体的标题栏

14.确定一个控件在窗体上的位置的属性是

(A) Width或Height (B) Width和Height

(C) Top或Left (D) Top和Left

15.确定一个窗体或控件的大小的属性是

(A) Width或Height (B) Width和Height

(C) Top或Left (D) Top和Left

16.为了同时选中窗体上的多个控件,可以按住

键,然后单击每个控件。

(A) Ctrl (B) Shift

(C) Alt (D) Ctrl或Shift

17.当标签的标题内容太长,需要根据标题自动调整标签大小时,应设置的属性是

(A) AutoSize (B) Visible

(C) Enabled (D) BackStyle

18.要在属性窗口修改控件上文字的字体、字形、大小、效果,应该利用其

(A) Text (B) Caption

(C) Name (D) Font

19.在窗体上已建立了多个控件,如Text1、Label1、Command1,若要使程序运行时焦点就定位在Command1控件上,应将Command1控件的

(1)属性设置为

(2)。

(1)  (A) Index (B) TabIndex

(C) TabStop (D) Enabled

(2)  (A) 0 (B) 1

(C) 2 (D) 3

20.通过文本框的

属性可以获得当前插入点所在的位置。

(A) Position (B) SelStart

(C) SelLength (D) Left

21.关于VB中控件的属性

(A)大多数只能在设计时设置

(B)大多数只能在运行时设置

(C)大多数既能在设计时设置,也能在运行时设置

(D)所有控件的所有属性既能在设计时设置,也能在运行时设置

22.窗体里有两个对象,分别是图片框Picture1和标签Label1。那么下面关于Print方法的使用中,错误的一条是

(A) Picture1.Print147 (B) Print147

(C) Printer.Print147 (D) Label1.Print147

23.以下关于窗体的描述中,错误的是

(A)执行UnloadForm1语句后,窗体Form1消失,但仍在内存中

(B)窗体的Load事件在加载窗体时发生

(C)当窗体的Enabled属性为False时,通过鼠标和键盘对窗体的操作都被禁止

(D)窗体的Height、Width属性用于设置窗体的高和宽

24.若要取消窗体的最大化功能,则可设置

属性为False来实现。

(A) ControlBox (B) MinButton

(C) MaxButton (D) Enabled

25.若要使窗体启动时位于屏幕的中间,则可通过

属性来设置。

(A) Top (B) Left

(C) StartUpPosition (D) WindowState

26.若要将窗体隐藏起来,则实现的方法为

(A) Hide (B) UnLoad

(C) Show (D) WindowState

27.若要求在文本框中输入密码时,在文本框中只显示 # 号,则应在此文本框的属性窗口中设置

(A) Caption属性值为#(B) Text属性值为 #

(C) PassWordChar属性值为# (D) Passwordchar属性值为真

28.若要将某命令按钮设置为默认命令按钮,则可设置其

属性为True来实现。

(A) Value (B) Cancel

(C) Default (D) Enabled

29.若要设置命令按钮的提示文本,可通过

属性来设置。

(A) Caption (B) Text

(C) Value (D) ToolTipText

30.若要使某命令按钮获得控制焦点,则可使用

方法来设置。

(A) Rcefresh (B) SetFocus

(C) GotFocus (D) Value

31.若要使文本框成为只读文本框,可通过设置

属性值为True来实现。

(A) ReadOnly (B) Lock

(C) Locked (D) Enabled

32.将命令按钮Command1的标题复制到文本框控件Text1作为显示文本,应执行

(A) Text1=Command1

(B) Text1.Text=Command1.Caption

(C) Text1.Caption

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论