中级学员可获取完整教程 |
只有VIP中级学员才可查看本章【子窗体和控件大小自动适应】的 完整课件、完整源码、清晰视频(讲师逐个知识点专业讲解),系统、高效、专业地学习Access应用及开发,让您节约大量的时间和精力,我们带给您的不只是知识的讲解,还有普通培训机构无法提供给您的更多行业的编程经验以及实战开发中的技巧,这些可以让您少花很多无谓的时间,少走很多弯路,轻松直达专业开发之路。
如需【子窗体和控件大小自动适应】完整培训视频与源码下载,请咨询:
培训课件部分内容预览 |
1. 第七节 子窗体和控件大小自动适应-部分PPT之1
2. 第七节 子窗体和控件大小自动适应-部分PPT之2
3. 第七节 子窗体和控件大小自动适应-部分PPT之3
4. 第七节 子窗体和控件大小自动适应-部分PPT之4
5. 第七节 子窗体和控件大小自动适应-部分PPT之5
6. 第七节 子窗体和控件大小自动适应-部分PPT之6
7. 第七节 子窗体和控件大小自动适应-部分PPT之7
8. 第七节 子窗体和控件大小自动适应-部分PPT之8
培训内容部分关键字 |
内容摘要:
本Access培训视频由Office中国出品
Access中级培训
窗体设计 中级培训
本节讲师:杨仕航
第七节 子窗体和控件大小自动适应
本节摘要
改变Left,Top,Width,Height
1
使用move 方法
2
子窗体和控件大小自动适应
其他技巧
3
限制改变的上下限
4
子窗体和其他控件大小跟随窗体改变,主要是利用主窗体的
Resize事件。主窗体一改变大小,或者最大化最小化,就会触发
Resize事件。
方法一:通过改变控件的left,top,width,height等属性
Left: 离窗体左边的距离(左边距)
Top: 离窗体上边的距离(上边距)
Width: 宽度
Height: 高度
例如:me.frmSub.width=me.insidewidth
子窗体和控件大小自动适应
改变Left,Top,Width,Height
1
方法二:用控件的move方法
控件.move left,[top],[width],[height]
第一个参数是必填的
相对第一种方法比较快捷
例如:me.frmSub.move 0,0,me.insidewidth,2000
子窗体和控件大小自动适应
使用move 方法
2
技巧一:批量改变
有时,控件数量会比较多,一个一个改会很麻烦
有没有一些技巧呢?
当然有!
通过tag属性,遍历控件并调整
详细见示例
技巧二:错误处理
有时,改变窗体大小而改变控件位置和大小会发生
错误。
加一句 on error resume next
子窗体和控件大小自动适应
其他技巧
3
有时,不想窗体变得太小
可以用if条件判断窗体大小去限制
If me.width<1000 then me.width=1000 ‘限制下限
或者
If me.width>7000 then me.width=7000 ‘限制上限
子窗体和控件大小自动适应
限制改变的上下限
4
本节摘要
子窗体和控件大小自动适应
改变Left,Top,Width,Height
1
使用move 方法
2
其他技巧
3
限制改变的上下限
4
谢 谢!
Access中级培训
Access课程源码-部分预览 |
部分代码展示
1
2 Private Sub cmdNew_Click()
3 Dim Rs As New ADODB.Recordset '定义一个ADO 记录集
4 Dim strSQL As String '保存SQL语句
5 strSQL = "select * from tblPerson"
6
7 Rs.Open strSQL, CurrentProject.Connection, 1, 3
8 Rs.AddNew '新增操作
9 Rs.Fields("FName") = Nz(FName) '对应字段赋值
10 Rs.Fields("FSex") = Nz(Me.FSex, "男")
11 Rs.Fields("FAge") = Nz(Me.FAge, 10)
12 Rs.Update '提交数据
13 Rs.Close
14
15 Me.frmSub.Form.RecordSource = strSQL
16 Me.frmSub.Requery '刷新子窗体
17
18 Me.frmSub.SetFocus
19 DoCmd.GoToRecord acActiveDataObject, , acLast
20 Set Rs = Nothing
21 End Sub
22
23 Private Sub Form_Load()
24
25 End Sub
26
27 Private Sub Form_Resize()
28 On Error Resume Next
29 '子窗体大小自适应
30 'Me.frmSub.Left = 0
31 'Me.frmSub.Top = 0
32 Me.frmSub.Width = Me.InsideWidth
33 Me.frmSub.Height = Me.InsideHeight / 3 * 2
34 '线条大小自适应
35 'Me.myLine.Left = 0
36 Me.myLine.Top = frmSub.Height + 100
37 Me.myLine.Width = Me.InsideWidth
38 'Me.myLine.Height = 0
39
40 '文本框大小自适应
41 Me.ID.Move Me.ID.Left, myLine.Top + 150
42 Me.ID_Label.Move Me.ID_Label.Left, myLine.Top + 150
43
44 Me.FName.Move Me.FName.Left, myLine.Top + 150
45 Me.FName_Label.Move Me.FName_Label.Left, myLine.Top + 150
46
47 Me.FAge.Move Me.FAge.Left, myLine.Top + 150
48 Me.FAge_Label.Move Me.FAge_Label.Left, myLine.Top + 150
49
50 Me.FSex.Move Me.FSex.Left, myLine.Top + 150
51 Me.FSex_Label.Move Me.FSex_Label.Left, myLine.Top + 150
52
53 '按钮大小自适应
54 Dim ctr As Control
55 For Each ctr In Me.Controls '遍历窗体控件
56 If TypeOf ctr Is CommandButton Then
57 ctr.Top = ID.Top + ID.Height + 200
58 End If
59 Next
60
61 If Me.InsideHeight < 6500 Then Me.InsideHeight = 6500
62 If Me.InsideWidth < 9000 Then Me.InsideWidth = 9000
63 End Sub