| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 6444 人关注过本帖, 1 人收藏
标题:VB如何做到鼠标移动到窗体上 窗体从屏幕右边向左展开出现?
只看楼主 加入收藏
lctulxf
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-10-29
结帖率:0
收藏(1)
已结贴  问题点数:20 回复次数:8 
VB如何做到鼠标移动到窗体上 窗体从屏幕右边向左展开出现?
向各位大侠求助,我要做下面功能的VB程序:

想用VB做一个程序,界面如下:
图片附件: 游客没有浏览图片的权限,请 登录注册



功能要求:

1、  程序运行时,form1窗体在窗口右边隐藏(只出现“学习内容”一列)

2、  鼠标移动窗体上时,form1窗体向左展开。

而且,单击相应的章节,出现具体的教学内容(怎么呈现教学内容都可以)

3、鼠标离开窗体时,form1窗体再折叠回原样。

[此贴子已经被作者于2016-4-1 08:25编辑过]

搜索更多相关主题的帖子: 如何 而且 教学 
2016-03-31 20:32
lctulxf
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-10-29
收藏
得分:0 
在线等……
希望各位专家给与指导,不胜感激!!!
2016-03-31 20:39
同志们小碎步
Rank: 2
等 级:论坛游民
帖 子:1
专家分:10
注 册:2016-3-31
收藏
得分:10 
有人做了吗
2016-03-31 21:09
xiangyue0510
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:86
帖 子:941
专家分:5244
注 册:2015-8-10
收藏
得分:10 
话说,其实并不必用VB做这样的课件,PPT就可以达到类似的效果,有或者用专业的课件软件也是可以的
程序代码:
Option Explicit

Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Declare Function GetWindowRect Lib "user32 " (ByVal hwnd As Long, lpRect As RECT) As Long

Private Type POINTAPI
X As Long
Y As Long
End Type

Private Type RECT
    Left   As Long
    Top   As Long
    Right   As Long
    Bottom   As Long
End Type

Dim showLargeFrm As Boolean

Dim smlWidth, lgWidth As Integer


Private Sub Form_Load()

smlWidth = 500
lgWidth = 7000
Timer1.Enabled = True
Timer1.Interval = 100

Form1.Width = 500
showLargeFrm = False
End Sub




Private Sub Label1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Form1.Width = 7000
showLargeFrm = True

End Sub

Private Sub Timer1_Timer()
If showLargeFrm Then
Dim p As POINTAPI, r As RECT
GetCursorPos p
GetWindowRect Me.hwnd, r
If p.X < r.Left Or p.X > r.Right Or p.Y < r.Top Or p.Y > r.Bottom Then
Form1.Width = 500
showLargeFrm = False
End If
End If
End Sub
2016-04-01 09:05
lctulxf
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-10-29
收藏
得分:0 
回复 4楼 xiangyue0510
谢谢版主的解答。
不过我还没测试成功。以上代码粘贴到哪儿?我是新手,不好意思,请详细说一下,好吗?
2016-04-01 09:22
lctulxf
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-10-29
收藏
得分:0 
回复 4楼 xiangyue0510
您好,可以详细指点一下吗?我急用
留下QQ号或手机号可以吗?谢谢
2016-04-01 09:26
xiangyue0510
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:86
帖 子:941
专家分:5244
注 册:2015-8-10
收藏
得分:0 
以下是引用lctulxf在2016-4-1 09:22:00的发言:

谢谢版主的解答。
不过我还没测试成功。以上代码粘贴到哪儿?我是新手,不好意思,请详细说一下,好吗?


这个就是你这个窗口的代码,不要告诉我窗口代码你都不清楚什么意思。 那样的话,你去找本VB教程,半小时就明白了。

label1就是你坐标的“学习内容”的label控件名字, form1是你的窗口,如果不是的话改成一致的就可以。
另外要加入一个timer(默认就是timer1)
2016-04-01 09:52
lctulxf
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2010-10-29
收藏
得分:0 
回复 7楼 xiangyue0510
谢谢楼主,我做成了。再完善一下链接就可以,谢谢!谢谢!
2016-04-01 10:48
xiangyue0510
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:86
帖 子:941
专家分:5244
注 册:2015-8-10
收藏
得分:0 
以下是引用lctulxf在2016-4-1 10:48:17的发言:

谢谢楼主,我做成了。再完善一下链接就可以,谢谢!谢谢!


不客气。你这么快做好,说明你还是用心学了,基本读懂了例子。
2016-04-01 15:23
快速回复:VB如何做到鼠标移动到窗体上 窗体从屏幕右边向左展开出现?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.036521 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved