中级学员可获取完整教程


 

 

     只有VIP中级学员才可查看本章【子窗体和控件大小自动适应】的 完整课件、完整源码、清晰视频(讲师逐个知识点专业讲解),系统、高效、专业地学习Access应用及开发,让您节约大量的时间和精力,我们带给您的不只是知识的讲解,还有普通培训机构无法提供给您的更多行业的编程经验以及实战开发中的技巧,这些可以让您少花很多无谓的时间,少走很多弯路,轻松直达专业开发之路。

 

     如需【子窗体和控件大小自动适应】完整培训视频与源码下载,请咨询:Button

 

 

培训课件部分内容预览


 

clip0033

 

1. 第七节 子窗体和控件大小自动适应-部分PPT1

 

 

 

clip0034

 

2. 第七节 子窗体和控件大小自动适应-部分PPT2

 

 

 

clip0035

 

3. 第七节 子窗体和控件大小自动适应-部分PPT3

 

 

 

clip0036

 

4. 第七节 子窗体和控件大小自动适应-部分PPT4

 

 

 

clip0037

 

5. 第七节 子窗体和控件大小自动适应-部分PPT5

 

 

 

clip0038

 

6. 第七节 子窗体和控件大小自动适应-部分PPT6

 

 

 

clip0039

 

7. 第七节 子窗体和控件大小自动适应-部分PPT7

 

 

 

clip0040

 

8. 第七节 子窗体和控件大小自动适应-部分PPT8

 

 

 

培训内容部分关键字


 

内容摘要:

 

本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