网站建设资讯

NEWS

网站建设资讯

vb.net悬浮窗,web悬浮窗

VB.NET窗口置顶在最前面显示的时候不影响目前鼠标焦点.

这是一个关于模态窗口与非模态窗口的问题。

创新互联长期为上千客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为西城企业提供专业的做网站、成都网站建设,西城网站改版等技术服务。拥有十余年丰富建站经验和众多成功案例,为您定制开发。

实现非模态窗口也没什么难度

Dim form As New Form1

form.TopMost = True

form.Show()

你再将鼠标移到父窗口上,弹出的窗口也不会消失。

VB.net一个很简单的UI问题

花了二十分钟给你写了代码,已测试。建议学习并使用System.Drawing绘制。

主要是掌握Graphics.FillRectangle和DrawString的使用。

Imports System.Drawing

Public Class 进度条UI

Public 上面笔刷 As SolidBrush = New SolidBrush(Color.FromArgb(192, 175, 238, 238))

Public 下面笔刷 As SolidBrush = New SolidBrush(Color.FromArgb(192, 30, 144, 255))

Public 文字笔 As SolidBrush = New SolidBrush(Color.FromArgb(255, 255, 255, 255))

Public 字体 As Font = New Font("微软雅黑", 14.0)

Public 文字格式 As StringFormat = New StringFormat() With

{.Alignment = StringAlignment.Center, .LineAlignment = StringAlignment.Center}

''' summary

''' 绘制指定进度的图像。

''' 当进度变化时调用一次本方法,建议将创建的Graphics对象保存到变量而不要重复创建。。

''' /summary

''' param name="控件"绘制到此控件的工作区/param

''' param name="g"绘制到控件的Graphics对象,例如 Button1.CreateGraphics()/param

''' param name="进度"进度百分比实数,57% = 0.57/param

Public Sub 绘制(ByRef 控件 As Control, ByRef g As Graphics, ByVal 进度 As Double)

Dim 矩形 = 控件.ClientRectangle '获取控件的工作区矩形

Dim 下面高度 = CInt(矩形.Height * 进度) '获取下面颜色块的高度

Dim 中间位置 = 矩形.Top + 矩形.Height - 下面高度 '获取中间分界线的Y坐标

Dim 上矩形 = New Rectangle(矩形.X, 矩形.Y, 矩形.Width, 矩形.Height - 下面高度)

Dim 下矩形 = New Rectangle(矩形.X, 中间位置, 矩形.Width, 下面高度)

g.FillRectangle(上面笔刷, 上矩形)

g.FillRectangle(下面笔刷, 下矩形)

'绘制文字

Dim 文字 As String = String.Format("{0:0.00}%", 进度 * 100)

g.DrawString(文字, 字体, 文字笔, 矩形, 文字格式)

End Sub

End Class

下面是Form1窗体的代码:添加一个Button1和Timer1控件,将Button1尺寸拖大点

Public Class Form1

Public g As Graphics

Public 进度条UI As New 进度条UI

Public 进度 As Double

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

g = Button1.CreateGraphics()

Timer1.Enabled = Not Timer1.Enabled

End Sub

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick

进度 += 0.01

进度条UI.绘制(Button1, g, 进度)

End Sub

End Class

VB.net怎么弹出如下类似的对话框(看图)?

可以利用msgbox 实现,也可以通过另外的窗体上画出表格实现

方法一,利用msgbox:

Private Sub Command1_Click()Dim a As Long, b As Long, c As LongMsgBox "┌────┬────┬────┐" vbCrLf _ "│ 库存1 │ 库存2 │ 库存3 │" vbCrLf _ "├────┼────┼────┤" vbCrLf _ "│" formatstr(a) "│" formatstr(b) "│" formatstr(c) "│" vbCrLf _ "└────┴────┴────┘" End SubPrivate Function formatstr(ByVal inputStr As String) As StringDim j As Integerj = (8 - Len(inputStr)) \ 2formatstr = Space(j) inputStr Space(j) Space((8 - Len(inputStr)) Mod 2)End Function

方法二,利用窗体实现:

’新建form2窗体‘将以下代码复制到form2窗体中Private Sub Form_Load()ShowPrint "┌────┬────┬────┐" vbCrLf _ "│ 库存1 │ 库存2 │ 库存3 │" vbCrLf _ "├────┼────┼────┤" vbCrLf _ "│" formatstr(a) "│" formatstr(b) "│" formatstr(c) "│" vbCrLf _ "└────┴────┴────┘" End SubPrivate Function formatstr(ByVal inputStr As String) As StringDim j As Integerj = (8 - Len(inputStr)) \ 2formatstr = Space(j) inputStr Space(j) Space((8 - Len(inputStr)) Mod 2)End Function‘将以下代码复制在form1窗体中Private Sub Command1_Click()Form2.ShowEnd Sub

VB怎么做悬浮窗口(点击不显示任务栏的那种)

可以的,设置边框窗户,

设置可拖动

releasecapture()

sendmessage wm_syscommand ,htcaption or wm_move

置顶

setwindowpos -1,0,0,0,0,H1 or H2

VB.net怎样按住鼠标移动无边框窗体

当用户按下左键时,为按下对象的MouseMove事件绑定处理方法,并记录鼠标坐标(窗体左上角为原点,在事件的MouseEventArgs类型的e参数中提供)。此时用户移动鼠标,保持窗体原点与鼠标新坐标的相对位置不变。当用户释放左键时,撤销按下对象的MouseMove事件处理方法


分享文章:vb.net悬浮窗,web悬浮窗
文章地址:http://cdweb.net/article/dseocpc.html