如何让一个窗体移动的时候另一个也跟着动

xidiancjw 2009-11-11 01:26:49
有两个窗体form1和form2,要求移动form1时,form2也跟着一起动,也就是说它们的相对位置不变。烦请高人指点一二。
...全文
276 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
舉杯邀明月 2009-11-13
  • 打赏
  • 举报
回复
楼主的这个问题还没解决?
9F 给的链接,下载来看没有?

用 Timer控件 是比较简单,但效果肯定不好:
1. 在不停地设置窗体位置(即使没移动)。
2. 主窗口快速移动时,‘吸附窗口’肯定会是“跳跃”的(我没试,估计会这样,无论你把 .Interval 设得多小)。


效果最佳的解决方法是 HOOK 窗口消息处理 WinMsgProc() 。
自己想一下吧。
神马都能聊 2009-11-11
  • 打赏
  • 举报
回复
1、窗体跟随。看这个链接http://www.mndsoft.com/blog//article.asp?id=215或者自己搜索 VB 磁性窗体。

2、窗体保持最前。可以使用SetWindowPos,网上搜索VB SetWindowPos
贝隆 2009-11-11
  • 打赏
  • 举报
回复
最简单的方法就是在窗体中添加一个定时器,大致如下:
Option Explicit

Private Sub Command1_Click()
Form2.Show
End Sub

Private Sub Form_Load()
Timer1.Enabled = True
Timer1.Interval = 100
End Sub

Private Sub Timer1_Timer()
On Error GoTo errSub
Form2.Left = Form1.Left + 1000
Form2.Top = Form1.Top + 1000
Exit Sub
errSub:

End Sub
xidiancjw 2009-11-11
  • 打赏
  • 举报
回复
是去掉了标题栏的窗口,好像不能移动的吧。因为窗口小,我需要它不被大的窗口覆盖,用最简单的方法怎样让它总在最前
嗷嗷叫的老马 2009-11-11
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 zhuhuofong 的回复:]
VB6 没有单独的窗体移动事件。用API可以实现。另外可以用变通的办法。用timer控件检测窗体移动。
在窗体放入 from1 和 from2  timer控件。timer控件的Interval属性值设小一点。
VB codeDim WinXAsLong, WinYAsLongPrivateSub Form_Load()
Timer1.Interval=100
Timer1.Enabled=True
Form2.ShowEnd SubPrivateSub Timer1_Timer()If WinX<> Me.LeftOr WinY<> Me.TopThen
WinX= Me.Left: WinY= Me.Top
WindowMoveEndIfEnd SubSub WindowMove()
Me.Cls
Me.CurrentX=0
Me.CurrentY=0
Me.Print"Left:"& WinX&" Top:"& WinY
Form2.Height= Me.Height
Form2.Left= Me.Width+ Me.Left
Form2.Top= WinYEnd Sub
[/Quote]
支持这个,简单有效.
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 xidiancjw 的回复:]
忘了,补充:form2必须在form1的特定区域内,
[/Quote]
用mdiform 试试
zhuhuofong 2009-11-11
  • 打赏
  • 举报
回复 1
VB6 没有单独的窗体移动事件。用API可以实现。另外可以用变通的办法。用timer控件检测窗体移动。
在窗体放入 from1 和 from2 timer控件。timer控件的Interval属性值设小一点。
Dim WinX As Long, WinY As Long
Private Sub Form_Load()
Timer1.Interval = 100
Timer1.Enabled = True
Form2.Show
End Sub

Private Sub Timer1_Timer()
If WinX <> Me.Left Or WinY <> Me.Top Then
WinX = Me.Left: WinY = Me.Top
WindowMove
End If
End Sub
Sub WindowMove()
Me.Cls
Me.CurrentX = 0
Me.CurrentY = 0
Me.Print "Left:" & WinX & " Top:" & WinY
Form2.Height = Me.Height
Form2.Left = Me.Width + Me.Left
Form2.Top = WinY
End Sub
xidiancjw 2009-11-11
  • 打赏
  • 举报
回复
忘了,补充:form2必须在form1的特定区域内,
  • 打赏
  • 举报
回复
加个if windowstate 《》 1 还是0, 忘了
  • 打赏
  • 举报
回复
form1_resize()
form2.move
1,barsetup10.exe
Office 97 的工具栏(267KB)
2,ac35vb6.zip
界面控件,支持键盘、 MouseOvers 和定制图相等功能(950KB)
3,activeskin.zip
皮肤效果控件,给您的应用程序加上漂亮的皮肤(2524KB)
4,aniline.zip
流向画控件(445KB)
5,aresbuttonpro.zip
圆形按钮控件(320KB)
6,axfesetup.exe
窗体扩展控件,包含:自恢复大小和位置,永远在顶大小限制,完全的 HTML 帮助等(889KB)
7,splitter.zip
一个简单有效的类似资源管理器的 Splitter 控件(27KB)
8,cooline.zip
cooline(8KB)
9,dbtnw.exe
DameWare 公司出品声音按钮控件(191KB)
10,dwtsw.exe
DameWare 公司出品滚文本控件(154KB)
11,dockit14.exe
窗体控件(816KB)
12,rainbtnvb6.zip
具有许多功能的按钮控件(112KB)
13,ezwizllt.exe
制作类似安装程序向导的控件(709KB)
14,agfastformvb5.zip
功能很多的增强窗体功能的控件(2333KB)
15,axformanimator.zip
支持系统声音和变焦的窗体 Ani 控件(182KB)
16,ft.zip
可用一行代码创建窗体边框和透明窗体的控件(19KB)
17,fsmsg20d.exe
窗体信息捕获控件(247KB)
18,fssc120d.exe
窗体控件,当控件放不下时,它可以给您更大的区域(354KB)
19,gcjrfm,exe
改良 VB 的 Frame 控件(125KB)
20,hsoft11,zip
包含两个 IE 工具栏和 Office 列表框的小控件(73KB)
21,ledbag6.exe
专业的 LED 控件(317KB)
22,wizardx6.exe
专业的向导控件(427KB)
23,led.zip
LED控件(165KB)
24,led.exe
LED 控件(348KB)
25,picbtn.exe
图片按钮控件(365KB)
26,tips.exe
工具提示文本控件(354KB)
27,numberled.zip
NumberLED控件能生成非常漂亮的数码管(175KB)
28,thbcc.zip
定制窗体标题栏控件。可添加图片、文字来改变标题栏(693KB)
29,trispace.zip 73KB
软件 3D 引擎控件,可构造 3D 物体或场景(73KB)
30,ariadtbsrc.zip
dRIAD工具条(220KB)
31,spltbars.zip
利用该控件可以轻松地在你的应用程序中加入一个分割条(25KB)
32,im209.zip
利用该控件创建带图标的菜单(68KB)
33,hlink.zip
将这个控件加到你的窗体上,并设置好URL,当点击该控件时,你就可以打开一个网站或启默认的电子邮件程序或是其它指定的程序。此外,你还可以改变颜色、字体、边框以及鼠标悬停状态等(18KB)
34,trayform.zip
该控件让你轻松地将窗体发送到系统托盘中(32KB)
35,activeform.zip
一个窗体换肤的控件(27KB)
36,rotext.exe
ROTEXT(316KB)
37,newcombo.ZIP
标准的combo控件只允许你从下拉框中选择一个选项,也许有时你需要选择多个,试试这个控件(20KB)
38,mighttywindow.ZIP
一个控件,提供了许多功能:隐藏桌面、隐藏工具条、禁止鼠标、重启、重新登录等,看看就知道啦。(18KB)
39,rulerdemo.ZIP
一个很普通的标尺控件,有水平和垂直两种样式。(11KB)
40,prop20vb6.ZIP
可以实现与VB中属性栏同样的效果,如字体、颜色、浏览等(150KB)
41,ab2eval.EXE
使用 ActiveBar 2.0 基本上可以做出 Office 2000 的各种程序界面(包括菜单、工具栏、垂直导航、状态栏以及各种Dock 窗口)。(2572KB)
42,j006_actresiz.zip
FORM的大小改变的时候,里面的对象也会跟着放大缩小(附示例原程序)(30KB)
43,j005_TriSpace.zip
此控件是一个软件3D引擎,内有示例源程序。(72KB)
44,j004_lvicodra.zip
可拖拉图标的ListView控件演示
45,j003_graphtreeocx.zip
图形树控件(129KB)
46,j002_coolbutton.zip
注释 椭圆、三角、星...形按钮控件,斑竹苦苦搜寻了n天n个网站,真是功夫不负有心人。 Vrey Very Cool(106KB)
47,j001_digital.zip
能够以液晶字体方式显示数字的一个小控件。(15KB)
48,asbubble01.zip
几个特殊的控件,可以在程序里弹出类似于气泡的对话框(37KB)
49,formshaper.zip
无需再调用api,利用这个控件你可以把窗体设计成为任意的形状(18KB)
50,devporbu.zip
建立如同out look里的菜单条(401KB)
51,chklsb25.zip
它提供了类似 word 和 excel 中的内含检查框 ( checkbox)的列表框(listbox)。在这个控制中,每一个条目的字体、颜色、使能状态和选中状态都可以被单独设置。这个控制也支持3d外观、图片条目和定制的检查框符号(167KB)
52,rulerbar.zip
显示纵向或横向标尺的ocx控件(28KB)
53,axafx30.zip
animationfx控件显示画效果的演示程序(143KB)
54,axtfx30.zip
transitionfx控件转换文字的演示程序(156KB)
55,display1.zip
控制显示方式的控件(71KB)
56,pwindow.zip
paint window控件(12KB)
57,actresiz.zip
改变form的大小的时候,原来form里的其他对象也会跟着放大放缩,简单但是有用!(30KB)
58,sclcon.zip
不知道你对ie里背景的水印属性有没有印象,现在你在窗体里也可以实现了(162KB)
59,submenu.zip
可以在VB中自定义弹出式子菜单(8KB)
60,zlibtool.zip
较好的一个有进度显示(26KB)
61,vfoutbar.zip
这里还有另一个控件 OutLook 风格的 BAR(39KB)
62,ovalbutton.zip
椭圆形按钮控件(8KB)
63,procbar.zip
一个漂亮进度条(可以显示百分比数字)(9KB)
64,weiqi.zip
围棋对弈程序的开发控件,可方便的开发出网络围棋对弈程序(18KB)
65,133.zip
FormShaper,定制窗体形状的控件(18KB)
66,c4.zip
翻滚文字的 ActiveX 控件(6KB)
67,FreeActiveX.zip
取消控件注册的About对话框限制(45KB)
68,Resize32.ocx
改变控件尺寸,在设计程序时只要在窗口上放入该控件,其它事情就由它来做喽…… (51KB)
69,transparent.ocx
可使窗体变成透明,如把控件的属性ShowNonClient设为False可使标题栏消失 (34KB)
70,AICOBUT.zip
画图标按扭(68KB)
71,vbocx10.zip
以及窗体内的控件是否随窗体大小的改变而改变,以及设置窗体是否处于最上方,以及设置窗体是否以爆炸式方式显示(19KB)
72,Easyscroll.zip
为任何控件增加滚条(41KB)
73,Zcg_3DLabel.zip
立体标签控件(15KB)
74,vertmenu.zip
用来制作类似Outlook那样的垂直菜单,是代替ActiveBar的不错选择。(有源代码) (280KB)
75,imgctls.zip
该控件包含两个控件,ImgListBox和ImgComboBox。它扩展了ListBox和ComboBox的功能,允许你为这两个控件中的项目添加图片(57KB)
76,boundactivex.zip
使用本控件可以使控件在程序运行时用鼠标拖(18KB)
77,zbpicbt.zip
用VB6写的浮图形按扭控件(有源代码)(47KB)
78,zbfdbt.zip
用VB6写的浮文本按扭控件(有源代码)(21KB)
79,Polyform.zip
创建不规则窗口(有例子)(94KB)
80,eyes.zip
跟着鼠标转的眼睛控件(有源代码)(6KB)
81,resize.zip
在调整窗体大小时可以将其上的所有控件一同进行调整.免去了大量的编程代码 (37KB)
82,gvocx.zip
一个能看多种图形格式的控件(267KB)
83,flatbtn.zip
能创建类似IE风格的按钮(88KB)
84,spliter.zip
Spliter.ocx控件主要是用来在程序中切分窗口,其中包括两种分割方式:1、竖着切分2、横着切分(18KB)
85,spltrbar.zip
SpltrBar.ocx控件主要是用来在程序中切分窗口(15KB)
86,cooltoolsbar.zip
CoolToolBar v1.0.0控件类似VC的ToolBar的功能,您也可以在VB中轻松实现拖工具栏了!(22KB)
87,flatcom.zip
平面控件组 - 有六个全平面控件(包括平面按钮、进度条、条、COMLIST、窗体栏)(42KB)
88,toolbox.zip
自编的类似VB工具箱的控件(217KB)
89,shape1.zip
任意形状窗口控件(96KB)
90,wallstreet.zip
该控件提供了一个可以左右滚的WallStreet style ticker(51KB)

7,785

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧