《全国计算机等级考试二级笔试试卷.doc》由会员分享,可在线阅读,更多相关《全国计算机等级考试二级笔试试卷.doc(45页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流全国计算机等级考试二级笔试试卷.精品文档.全国计算机等级考试二级笔试试卷Visual Basic语言程序设计(考试时间:90分钟,满分100分)二二年八月一、选择题(每题2分,共70分) 下列各题A) 、B) 、C) 、D) 四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。(1) 在设计阶段,当双击窗体上的某个控件时,所打开的窗口是A) 工程资源管理器窗口B) 工具箱窗口C) 代码窗口D) 属性窗口(2) 以下叙述中正确的是A) 窗体的Name属性指定窗体的名称,用来标识一个窗体B) 窗体的Name属性
2、的值是显示在窗体标题栏中的文本C) 可以在运行期间改变对象的Name属性的值D) 对象的Name属性值可以为空(3) 刚建立一个新的标准EXE工程后,不在工具箱中出现的控件是A) 单选按钮B) 图片框C) 通用对话框D) 文本框(4) 设有如下变量声明Dim TestDate As Date为变量TestDate正确赋值的表达方式是A) TextDate=#1/1/2002#B) TestDate=#“1/1/2002”#C) TextDate=date(“1/1/2002”)D) TestDate=Format(“m/d/yy”,“1/1/2002”)(5) 设有如下声明:Dim X As
3、Integer如果Sgn(X) 的值为-1,则X的值是A) 整数B) 大于0的整数C) 等于0的整数D) 小于0的数(6) 在窗体上画一个名称为Commandl的命令按钮,然后编写如下程序:Private Sub Command1_Click()Static X As IntegerStatic Y As IntegerClsY=1Y=Y+5X=5+XPrint X,YEnd Sub程序运行时,三次单击命令按钮Commandl后,窗体上显示的结果为A) 15 16B) 15 6C) 15 15D) 5 6(7) 设a=3,b=5,则以下表达式值为真的是A) a=b And b10B) (ab)
4、Or(b0)C) (a0)D) (-3+5a)And(b0)(8) 设有语句x=InputBox(“输入数值”,“0”,“示例”)程序运行后,如果从键盘上输入数值10并按回车键,则下列叙述中正确的是A) 变量X的值是数值10 B) 在InputBox对话框标题栏中显示的是“示例”C) 0是默认值 D) 变量X的值是字符串“10”(9) 从键盘上输入两个字符串,分别保存在变量str1、str2中。确定第二个字符串在第一个字符串中起始位置的函数是A) LeftB) MidC) StringD) Instr(10)设a=“Visual Basic”,下面使b=“Basic”的语句是A) b=Left
5、(a,8,12) B) b=Mid(a,8,5)C) b=Rigth(a,5,5) D) b=Left(a,8,5)(11) 以下能够触发文本框Change事件的操作是A) 文本框失去焦点B) 文本框获得焦点C) 设置文本框的焦点D) 改变文本框的内容(12) 在窗体上有一个文本框控件,名称为TxtTime:一个计时器控件,名称为Timerl,要求每一秒钟在文本框中显示一次当前的时间。程序为:Private Sub Timer1_ ()TxtTime.text=TimeEnd Sub在下划线上应填入的内容是A) EnabledB) VisibleC) Interval D) Timer(13)
6、 在窗体上画两个单选按钮,名称分别为Option1、Option2,标题分别为“宋体”和“黑体”;一个复选框,名称为Check1,标题为“粗体”;一个文本框,名称为Text1,Text属性为“改变文字字体”。要求程序运行时,“宋体”单选按钮和“粗体”复选框被选中(窗体外观如下图) ,则能够实现上述要求的语句序列是A) Option1.value=TrueB) Option1.Value=TrueCheck1.Value=False Check1.Value=TrueC) Option2.Value=FalseD) Option1.Value=TrueCheck1.Value=True Chec
7、k1.Value=1(14) 为了在按下Esc键时执行某个命令按钮的Click事件过程,需要把该命令按钮的一个属性设置为True,这个属性是A) ValueB) DefaultC) CancelD) Enabled(15) 在窗体上画一个命令按钮,名称为Command1。然后编写如下程序:Private Sub Command1_Click()For I=1 To 4For J=0 To 1Print Chr$(65+I);Next JPrintNext IEnd Sub程序运行后,如果单击命令按钮,则在窗体上显示的内容是A) BBB) AC) BD) AACCBBCCBBBDDDDCCCDD
8、DCCCCEEEEEDDDDEEEEDDDDD(16) 图像框有一个属性,可以自动调整图形的大小,以适应图像框的尺寸,这个属性是A) AutosizeB) StretchC) AutoRedrawD) Appearance(17) 在窗体上画两个名称分别为Text1、Texte2的文本框和一个名称为Command1的命令按钮,然后编写如下事件过程:Private Sub Command1_Click()Dim x As Integer,n As Integerx=1n=0Do While x10 Then xit forNextText1.Text=Str(n)End Sub程序运行后,单击命
9、令按钮,在文本框中显示的值是A) 2 B) 3D) 4D) 5(19) 在窗体上画一个名称为Text1的文本框和一个名称为Command1的命令按钮,然后编写如下事件过程:Private Sub Command1_Click()Dim array1(10,10) As IntegerDim i,j As IntegerFor i=1 To 3For j=2 To 4array1(i,j)=i+jNext jNext IText1.Text=array1(2,3)+array1(3,4)End Sub程序运行后,单击命令按钮,在文本框中显示的值是A) 12B) 13C) 14D) 15(20)
10、(20) 在窗体上画一个名称为Command1的命令按钮,然后编写如下程序:Private Sub Command1_Click()Dim i As Integer,j As IntegerDim a(10,10)As IntegerFor i=1 To 3For j=1 To 3a(i,j)=(i-1)*3+jPrint a(i,j);Next jPrintNext jEnd Sub程序运行后,单击命令按钮,窗体上显示的是A) 123B) 234C) 147D) 123246 345 258 456369 456 369 789 (21) 设有如下程序:Option Base 0Privat
11、e Sub Form_Click()Dim aDim i As Integera=Array(1,2,3,4,5,6,7,8,9)For i=0 To 3Print a(5-i);NextEnd Sub程序运行后,单击窗体,则在窗体上显示的是A) 4 3 2 1B) 5 4 3 2C) 6 5 4 3 D) 7 6 5 4(22) 下列叙述中正确的是A) 在窗体的Form_Load事件过程中定义的变量是全局变量B) 局部变量的作用域可以超出所定义的过程C) 在某个Sub过程中定义的局部变量可以与其它事件过程中定义的局部变量同名,但其作用域只限于该过程D) 在调用过程时,所有局部变量被系统初始化
12、为0或空字符串(23) 在窗体上画一个命令按钮,名称为Command1。程序运行后,如果单击命令按钮,则显示一个输入对话框,在该对话框中输入一个整数,并用这个整数作为实参调用函数过程F1。在F1中判断所输入的整数是否是奇数,如果是奇数,过程F1返回1,否则返回0。能够正确实现上述功能的代码是A) Private Sub Command1_Click()x=InputBox(“请输入整数”)a=F1(Val(x)Print aEnd SubFunction F1(ByRef b As Integer)If b Mod 2=0 ThenReturn 0ElseReturn 1End IfEnd F
13、unctionB) Private Sub Command1_Click()x=InputBox(“请输入整数”)a=F1(Val(x)Print aEnd SubFunction F1(ByRef b As Integer)If b Mod 2=0 ThenF1=0ElseF1=1End IfEnd FunctionC) Private Sub Command1_Click()x=InputBox(“请输入整数”)F1(Val(x)Print aEnd SubFunction F1(ByRef b As Integer)If b Mod 2=0 ThenF1=1ElseF1=0End IfE
14、nd FunctionD) Private Sub Command1_Click()x=InputBox(“请输入整数”)F1(Val(x)Print aEnd SubFunction F1(ByRef b As Integer)If b Mod 2=0 ThenReturn 0ElseReturn 1End IfEnd Function(24) 在窗体上画一个名称为Command1的命令按钮和一个名称为Text1的文本框,然后编写如下程序:Private Sub Command1_Click()Dim x,y,z As Integerx=5y=7z=0Text1.text=“”Call P1
15、(x,y,z)Text1.Text=Str(x)End SubSub P1(ByVal a As Integer,ByVal b As Integer,c As Integer)c=a+bEnd Sub程序运行后,如果单击命令按钮,则在文本框中显示的内容是A) 0B) 12C) Str(z)D) 没有显示(25) 以下叙述中错误的是A) 如果过程被定义为Static类型,则该过程中的局部变量都是Static类型B) Sub过程中不能嵌套定义Sub过程C) Sub过程中可以嵌套调用Sub过程D) 事件过程可以像通用过程一样由用户定义过程名(26) 以下叙述中错误的是A) 在KeyUp和KeyDo
16、wn事件过程中,从键盘上输入A或a被视作相同的字母(即具有相同的KeyCode) B) 在KeyUp和KeyDown事件过程中,将键盘上的“1”和右侧小键盘上的“1”视作不同的数字(具有不同的KeyCode) C) KeyPress事件中不能识别键盘上某个键的按下与释放D) KeyPress事件中可以识别键盘上某个键的按下与释放(27) 以下叙述中错误的是A) 在同一窗体的菜单项中,不允许出现标题相同的菜单项B) 在菜单的标题栏中,“&”所引导的字母指明了访问该菜单项的访问键C) 程序运行过程中,可以重新设置菜单的Visible属性D) 弹出式菜单也在菜单编辑器中定义(28) 设在菜单编辑器中
17、定义了一个菜单项,名为menu1。为了在运行时隐藏该菜单项,应使用的语句是A) menu1.Enabled=TrueB) Munu1.Enabled=FalseC) Menu1.Visible=TrueD) Menu1.Visible=False(29) 以下叙述中错误的是A) 在程序运行时,通用对话框控件是不可见的B) 在同一个程序中,用不同的方法(如ShowOpen或ShowSave等)打开的通用对话框具有不同的作用C) 调用通用对话框控件的ShowOpen方法,可以直接打开在该通用对话框中指定的文件D) 调用通用对话框控件的ShowColor方法,可以打开颜色对话框(30) 在用通用对话
18、框控件建立“打开”或“保存”文件对话框时,如果需要指定文件列表框所列出的文件类型是文本文件(即.txt文件),则正确的描述格式是A) “text (.txt)|(*.txt)”B)“文本文件( .txt) | (.txt)”C) “text(.txt)|(*.txt)”D)“text(.txt)(*.txt)”(31) 以下叙述中错误的是A) 一个工程中只能有一个Sub Main过程B) 窗体的Show方法的作用是将指定的窗体装入内存并显示该窗体C) 窗体的Hide方法和Unload方法的作用完全相同D) 若工程文件中有多个窗体,可以根据需要指定一个窗体为启动窗体(32) 以下叙述中错误的是A
19、) 一个工程中可以包含多个窗体文件B) 在一个窗体文件中用Private定义的通用过程能被其他窗体调用C) 在设计VB程序时,窗体、标准模块、类模块等需要分别保存为不同类型的磁盘文件D) 全局变量必须在标准模块中定义(33) 设在工程中有一个标准模块,其中定义了如下记录类型Type BooksName As String *10TelNum As String *20End Type在窗体上画一个名为Command1的命令按钮。要求当执行事件过程Command1_Click时,在顺序文件Person.txt中写入一条记录。下列能够完成该操作的事件过程是A) Private Sub Comman
20、d1_Click()Dim B As BooksOpen “c:Person.txt”For Output As #1B.Name=InputBox(“输入姓名”)B.TelNum=InputBox(“输入电话号码”)Write #1,B.Name,B.TelNumClose #1End SubB) Private Sub Command1_Click()Dim B As BooksOpen “c:Person.txt”For Input As #1B.Name=InputBox(“输入姓名”)B.TelNum=InputBox(“输入电话号码”)Print #1,B.Name,B.TelNu
21、mClose #1End SubC) Private Sub Command1_Click()Dim B As BooksOpen “c:Person.txt”For Output As #1B.Name=InputBox(“输入姓名”)B.TelNum=InputBox(“输入电话号码”)Write #1,BClose #1End SubD) Private Sub Command1_Click()Open “c:Person.txt”For Input As #1Name=InputBox(“输入姓名”)TelNum=InputBox(“输入电话号码”)Print #1,Name,TelN
22、umClose #1End Sub(34) 以下叙述中正确的是A) 一个记录中所包含的各个元素的数据类型必须相同B) 随机文件中每个记录的长度是固定的C) Open命令的作用是打开一个已经存在的文件D) 使用Input #语句可以从随机文件中读取数据(35) 目录列表框的Path属性的作用是A) 显示当前驱动器或指定驱动器上的目录结构B) 显示当前驱动器或指定驱动器上的某目录下的文件名C) 显示根目录下的文件名D) 显示该路径下的文件二、填空题( 每空2分,共40分)请将每空的正确答案写在答题卡( 1)至( 15) 的横线上,答在试卷上不得分。(1) 在窗体上画两个标签,其名称分别为Label
23、1和Label2,Caption属性分别为“数值”及空白;然后画一个名称为Hscoll1的水平滚动条,其Min的值为0,Max的值为100。程序运行后,如果单击滚动条两端的箭头,则在标签Lable2中显示滚动条的值,如图所示。请在 1 和 2 处填入适当的内容,将程序补充完整。Private Sub HScroll1_ 1 ()Labl2.Caption=HScroll1. 2 End Sub(2) 在窗体上画一个名称为Command1、标题为“计算”的命令按钮;画两个文本框,名称分别为Text1和Text2;然后画4个标签,名称分别为Label1、Label2、Label3和Label4,标
24、题分别为“操作数1”、“操作数2”、“运算结果”和空白;再建立一个含有4个单选按纽的控件数组,名称为Option1,标题分别为“+”、“-”、“*”和“/”。程序运行后,在Text1、Text2中输入两个数值,选中一个单选按钮后单击命令按钮,相应的计算结果显示在Label4,程序运行情况如图所示。请在 3 、 4 和 5 处填入适当的内容,将程序补充完整。Private Sub Command1_Click()For i=0 To 3If 3 =True thenopt=Option1(i).CaptionEnd IfNextSelect Case 4 Case”+”Result=Val(Te
25、xt1.Text)+Val(Text2.Text)Case”-”Result=Val(Text1.Text)-Val(Text2.Text)Case”*”Result=Val(Text.Text)*Val(Text2.Text)Case”/”Result=Val(Text1.Text)/Val(Text2.Text)End Select 5 =ResultEnd Sub(3) 在窗体上画一个名称为Command1的命令按钮和一个名称为Text1的文本框。程序运行后,Command1为禁用(灰色) 。当向文框中输入任何字符时,命令按钮Command1变为可用。请在 6 处填入适当的内容,将程序补
26、充完整。Private Sub Form_Load()Command1.Enabled=FalseEnd SubPrivate Sub Text1_ 6 ()Command1.Enabled=TrueEnd Sub(4) 在菜单编辑器中建立了一个菜单,名为pmenu,用下面的语句可以把它作为弹出式菜单弹出,请填空。Form1. 7 Pmenu(5) 以下程序的功能是:从键盘上输入若干个学生的考试分数,当输入负数时结束输入,然后输出其中的最高分数和最低分数。请在 8 和 9 处填入适当的内容,将程序补充完整。Private Sub Form_Click()Dim x As Single,amax
27、 As Single,amin As Singlex=InputBox(“Enter a score”)amax=xamin=xDo While 8 If xamax ThenAmax=xEnd IfIf 9ThenAmin=xEnd Ifx=InputBox(“Enter a score”)LoopPrint”Max=”;amax,”Min=”;aminEnd Sub(6) 在窗体上画一个文本框和一个图片框,然后编写如下两个事件过程:Private Sub Form_Load()Text1.Text=”计算机”End SubPrivate Sub Text1_Change()Picture1
28、.Print“等级考试”End Sub程序运行后,在文本框中显示的内容是 10 ,而在图片框中显示的内容是 11 。(7) 在窗体上画一个命令按钮,其名称为Command1,然后编写如下程序:Function M(x As Integer,y As Integer)As IntegerM=IIf(xy,x,y)End FunctionPrivate Sub command1_Click()Dim a As Integer,b As Integera=100b=200Print M(a,b)End Sub程序运行后,单击命令按钮,输出结果为 12 。(8) 为了改变计时器控件的时间间隔,应该修改
29、该控件的 13 属性。(9) 在窗体上画一个名称为Lable1的标签和一个名称为List1的列表框。程序运行后,在列表框中添加若干列表项。当双击列表框中的某个项目时,在标签Label1中显示所选中的项目,如图所示。请在 14 和 15 处填入适当的内容将程序补充完整。Private Sub Form_load()List1.AddItem”北京”List1.AddItem”上海”List1.AddItem”湖北”End SubPrivate Sub 14 ()Label1.Caption= 15 End Sub评分标准和参考答案一、 一、 选择题((1)(20)每小题2分,(21)(30)每小
30、题2分,共70分)(1) (1) C(2) (2) A(3) (3) C(4) (4) A(5) (5) D(6) (6) B(7) (7) B(8) (8) D(9) (9) D(10) (10) B(11) (11) D(12) (12) D(13) (13) D(14) (14) C(15) (15) A(16) (16) B(17) (17) B(18) (18) C(19) (19) A(20) (20) D(21) (21) C(22) (22) C(23) (23) B(24) (24) B(25) (25) C(26) (26) D(27) (27) A(28) (28) D(
31、29) (29) C(30) (30) A(31) (31) C(32) (32) B(33) (33) A(34) (34) B(35) (35) A二、填空题(每空2分,共20分)【1】Change【2】Value【3】Option(i).Value【4】opt【5】Label4.Caption 或Form1.Label4.Caption或Me.Label4.Caption或Command1.Parent_Label4.Caption【6】Change【7】PopupMenu【8】x=0【9】xamin或xx或amin=x【10】计算机【11】等级考试【12】200【13】Interval
32、【14】List1_DblClick或Form1.List1_DblClick或Me.list1_DblClick【15】List1.Text或List1或Form1.List1.Text或Me.List1.Text或Form1.List1或Me.List12003-1-全国计算机等级考试二级笔试试卷Visual Basic语言程序设计(考试时间120分钟,满分100分)一、选择题((1)(20)每小题2分,(21)(30)每小题2分,共70分)下列各题 A) 、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。(1) (1) 以下不能在“
33、工程资源管理器”窗口中列出的文件类型是A) .basB) .resC) .frmD) .ocx(2) (2) 以下关于窗体的描述中,错误的是A) 执行Unload Form1语句后,窗体Form1消失,但仍在内存中B) 窗体的Load事件在加载窗体时发生C) 当窗体的Enabled属性为False时,通过鼠标和键盘对窗体的操作都被禁止D) 窗体的Height、Width属性用于设置窗体的高和宽(3) (3) 下列可作为Visual Basic变量名的是A)A#AB)4AC)?xyD) constA(4) (4) 设有如下的记录类型Type StudentNumber As StringName
34、 As StringAge As IntegerEnd Type则正确引用该记录类型变量的代码是A) Student.name=张红B) Dim s As Students.name=张红C) Dim s As Type StudentD) Dim s As Types.name=张红s.name=张红(5) (5) 函数String(n, str)的功能是A) 把数值型数据转换为字符串B) 返回由n个字符组成的字符串C) 从字符串中取出n个字符D) 从字符串中第n个字符的位置开始取子字符串(6) (6) 将数学表达式Cos2(a+b)+5e2写成Visual Basic的表达式,其正确的形式
35、是A) Cos(a+b)2+5*exp(2)B) Cos2(a+b)+5*exp(2)C) Cos(a+b)2+5*ln(2)D) Cos2(a+b)+5*ln(2)(7) (7) 在窗体上画一个命令按钮,名称为Command1。单击命令按钮时,执行如下事件过程:Private Sub Command1_Click()a$=software and hardwareb$=Right(a$,8)c$=Mid(a$,1,8)MsgBox a$,b$,c$,1End Sub则在弹出的信息框的标题栏中显示的信息是A) software and hardwarB) softwareC) hardware
36、D) 1(8) (8) 执行如下语句a=InputBox(Today,Tomorrow,Yesterday,Day before yesterday,5)将显示一个输入对话框,在对话框的输入区中显示的信息是A) Today B) TomorrowC) YesterdayD) Day before Yesterday(9) (9) 表示滚动条控件取值范围最大值的属性是A) Max B) LargeChangeC) ValueD) Max-Min(10) (10) 在窗体上画一个名称为List1的列表框,一个名称为Label1的标签。列表框中显示若干城市的名称。当单击列表框中的某个城市名时,在标签
37、中显示选中城市的名称。下列能正确实现上述功能的程序是A) Private Sub List1_Click()B) Private Sub List1_Chilk()Label1.Caption=List1.ListIndexLabel1.Name=List1.ListIndexEnd SubEnd SubC) Private Sub List1_click()D) Private Sub List1_Click()Label1.Name=List1.TextLabel1.Caption=List1.TextEnd SubEnd Sub(11) (11) 在窗体上画一个名称为Command1的命
38、令按钮,然后编写如下事件过程Private Sub Command1_Click()x=0n=InputBox()For i=1 To nFor j=1 Toix=x+1Next jNext iPrint xEnd Sub程序运行后,单击命令按钮,如果输入3,则在窗体上显示的内容是A)3B)4C)5D)6(12) (12) 以下关于菜单的叙述中,错误的是A) 在程序运行过程中可以增加或减少菜单项B) 如果把一个菜单项的Enabled属性设置为False,则可删除该菜单项C)弹出式菜单在菜单编辑器中设计D)利用控件数组可以实现菜单项的增加或减少(13) (13) 在窗体上画三个单选按钮,组成一个
39、名为chkOption的控件数组。用于标识各个控件数组元素的参数是A) TagB) IndexC) ListIndexD) Name(14) (14) 在窗体上画一个命令按钮,名称为Command1,然后编写如下事件过程Option Base 0Private Sub Command1_Click()Dim city As VariantCity=Array(北京,上海,天津,重庆)Print city(1)End Sub程序运行后,如果单击命令按钮,则在窗体上显示的内容是A)空白B) 错误提示C) 北京D) 上海(15) (15) 假定有以下函数过程:Function Fun(S As St
40、ring)As StringDim s1 As StringFor i=1 To Len(S)s1=UCase(Mid(S,i,1)+s1Next iFun=s1End Function在窗体上画一个命令按钮,然后编写如下事件过程:Private Sub Command1_Click()Dim Str1 As String,Str2 As StringStr1=InputBox(请输入一个字符串)Str2=Fun(Str1)Print Str2End Sub程序运行后,单击命令按钮,如果在输入对话框中输入字符串“abcdefg”,则单击“确定”按钮后在窗体上输出结果为A)abcdefgB)AB
41、CDEFGC)gfedcbaD)GEFDCBA(16) (16) 设有语句Openc:Test.DatFor Output As#1则以下错误的叙述是A)该语句打开C盘根目录下一个已存在的文件Test.DatB)该语句在C盘根目录下建立一个名为Test.Dat的文件C)该语句建立的文件的文件号为1D)执行该语句后,就可以通过Print#语句向文件Test.Dat中写入信息(17) (17) 以下叙述中错误的是A)用Shell函数可以调用能够在Windows下运行的应用程序B)用Shell函数可以调用可执行文件,也可以调用Visual Basic的内部函数C)调用Shell函数的格式应为:=Sh
42、ell()D)用Shell函数不能执行DOS命令(18) (18) 以下关于过程及过程参数的描述中,错误的是A) 过程的参数可以是控件名称B) 用数组作为过程的参数时,使用的是“传地址”方式C) 只有函数过程能够将过程中处理的信息传回到调用的程序中D) 窗体可以作为过程的参数(19) (19) 在窗体上画一个名称为TxtA的文本框,然后编写如下的事件过程:Private Sub TxtA_KeyPress(keyascii as integer)End Sub若焦点位于文本框中,则能够触发KeyPress事件的操作是A) 单击鼠标B) 双击文本框C) 鼠标滑过文本框D) 按下键盘上的某个键(20) (20) 目录列表框的Path属性的作用是A)显示当前驱动器或指定驱动器上的路径B)显示当前驱动器或指定驱动器上的某目录下的文件名C)显示根目录下的文件名D)只显示当前路径下的文件(21) (21) 假设有如下事件过程Private Sub Form_MouseDown(Button As Integer,Shift As Integer,X As Single,Y As Single)If Button=2 ThenPopupMe