急,在控件周围画线

FRtfp 2003-08-19 04:12:48
有两个TextBox类型的控件,名为Text1,Text2
在Text1得到焦点时,按Text1的边框画四条线,清除Text2边上的线
在Text2得到焦点时,按Text2的边框画四条线,清除Text1边上的线
请问代码应该怎么写??
...全文
23 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
FRtfp 2003-08-19
  • 打赏
  • 举报
回复
知道,先谢谢了,我只能明天试试看了,今天没写出来,让老板骂了一顿,可怜
无意1975 2003-08-19
  • 打赏
  • 举报
回复
haipingma(我是谁) 的方法很好呀,不知你发现没有在控件工具栏上有画框的控件叫Shape.
射天狼 2003-08-19
  • 打赏
  • 举报
回复
'可以做成函数
Private Sub Form_Load()
Line1.BorderWidth = 2
Line2.BorderWidth = 2
Line3.BorderWidth = 2
Line4.BorderWidth = 2
End Sub

Private Sub Text1_GotFocus()
SetLinePos Text1
End Sub

Private Sub Text2_GotFocus()
SetLinePos Text2
End Sub

Private Sub SetLinePos(Txt As TextBox)
Line1.X1 = Txt.Left
Line1.X2 = Txt.Left + Txt.Width
Line1.Y1 = Txt.Top
Line1.Y2 = Txt.Top
Line2.X1 = Txt.Left
Line2.X2 = Txt.Left
Line2.Y1 = Txt.Top
Line2.Y2 = Txt.Top + Txt.Height
Line3.X1 = Txt.Left
Line3.X2 = Txt.Left + Txt.Width
Line3.Y1 = Txt.Top + Txt.Height
Line3.Y2 = Txt.Top + Txt.Height
Line4.X1 = Txt.Left + Txt.Width
Line4.X2 = Txt.Left + Txt.Width
Line4.Y1 = Txt.Top
Line4.Y2 = Txt.Top + Txt.Height
End Sub
射天狼 2003-08-19
  • 打赏
  • 举报
回复
Private Sub Form_Load()
Line1.BorderWidth = 2
Line2.BorderWidth = 2
Line3.BorderWidth = 2
Line4.BorderWidth = 2
End Sub

Private Sub Text1_GotFocus()
Line1.X1 = Text1.Left
Line1.X2 = Text1.Left + Text1.Width
Line1.Y1 = Text1.Top
Line1.Y2 = Text1.Top
Line2.X1 = Text1.Left
Line2.X2 = Text1.Left
Line2.Y1 = Text1.Top
Line2.Y2 = Text1.Top + Text1.Height
Line3.X1 = Text1.Left
Line3.X2 = Text1.Left + Text1.Width
Line3.Y1 = Text1.Top + Text1.Height
Line3.Y2 = Text1.Top + Text1.Height
Line4.X1 = Text1.Left + Text1.Width
Line4.X2 = Text1.Left + Text1.Width
Line4.Y1 = Text1.Top
Line4.Y2 = Text1.Top + Text1.Height
End Sub

Private Sub Text2_GotFocus()
Line1.X1 = Text2.Left
Line1.X2 = Text2.Left + Text2.Width
Line1.Y1 = Text2.Top
Line1.Y2 = Text2.Top
Line2.X1 = Text2.Left
Line2.X2 = Text2.Left
Line2.Y1 = Text2.Top
Line2.Y2 = Text2.Top + Text2.Height
Line3.X1 = Text2.Left
Line3.X2 = Text2.Left + Text2.Width
Line3.Y1 = Text2.Top + Text2.Height
Line3.Y2 = Text2.Top + Text2.Height
Line4.X1 = Text2.Left + Text2.Width
Line4.X2 = Text2.Left + Text2.Width
Line4.Y1 = Text2.Top
Line4.Y2 = Text2.Top + Text2.Height
End Sub
FRtfp 2003-08-19
  • 打赏
  • 举报
回复
有很多的文本框,每个页面都要用,我想写一个通用的函数,控件得到焦点时,只要把窗体和控件作为参数传进去就可以自动在四边画上线,失去焦点时让线消失或隐掉
就和K3的一样
各位,谢谢
FRtfp 2003-08-19
  • 打赏
  • 举报
回复
帮帮忙啊,再线等
snail2011 2003-08-19
  • 打赏
  • 举报
回复
画四条线呀!
你可以画一个距形呀!
把TEXTBOX放在距形里面.
至于编程嘛!就用楼上的好了.
victorycyz 2003-08-19
  • 打赏
  • 举报
回复
你可以简单地,在textbox位置添加shape控件,文本框得到焦点时显示,失去焦点时隐藏该控件就行。
victorycyz 2003-08-19
  • 打赏
  • 举报
回复
你可以简单地,在textbox位置添加shape控件,文本框得到焦点时显示,失去焦点时隐藏该控件就行。
haipingma 2003-08-19
  • 打赏
  • 举报
回复
Private Sub Text1_GotFocus()
Shape1.Visible = True
Shape2.Visible = False
End Sub

Private Sub Text2_GotFocus()
Shape1.Visible = False
Shape2.Visible = True
End Sub
chao778899 2003-08-19
  • 打赏
  • 举报
回复
画线可以用LINE函数,不知楼主什么意思:)

7,763

社区成员

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

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