重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
Visual Studio 2013
创新互联建站是一家专业提供蓬江企业网站建设,专注与成都网站制作、网站建设、H5网站设计、小程序制作等业务。10年已为蓬江众多企业、政府机构等服务。创新互联专业网站设计公司优惠进行中。
Microsoft Visual Studio(简称VS)是美国微软公司的开发工具包系列产品。VS是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境(IDE)等等。所写的目标代码适用于微软支持的所有平台,包括Microsoft Windows、Windows Mobile、Windows CE、.NET Framework、.NET Compact Framework和Microsoft Silverlight 及Windows Phone。 Visual Studio是目前最流行的Windows平台应用程序的集成开发环境。最新版本为 Visual Studio 2013 版本,基于.NET Framework 4.5.1 。
花了二十分钟给你写了代码,已测试。建议学习并使用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
这里有个C#的网上OA的代码,可以参考一下:
第10章(\C10)
示例描述:本章实现了办公自动化系统,通过该系统,公司不同角色的员工可以通过网路完成日常的办公,包括撰写报告、审阅公文等。另外,系统还将实现一个系统管理员角色,对整个系统进行动态的维护。
\MyOA\Affix 网络办公系统用户上传附件目录
\MyOA\App_Code\BusinessLogicHelper 网络办公系统业务逻辑接口层,包括文件:
\FileHelper.cs 公文接口类
\ValidateUtility.cs 数据验证功能类
\MyOA\App_Code\BusinessLogicLayer 网络办公系统业务逻辑层,包括以下文件:
\Department.cs 部门类
\File.cs 公文类
\FileStatus.cs 公文状态类
\Plan.cs 工作计划类
\Role.cs 用户角色权限类
\User.cs 用户类
\MyOA\App_Code\CommonComponent 网络办公系统通用组件层,包括文件:
\Encrypt.cs 字符串加密类
\EventsLog.cs 系统日志类
\Tree.cs 权限树类
\MyOA\App_Code\DataAccessHelper 网络办公系统数据访问接口层,包括文件:
\SQLString.cs 构造SQL语句的通用类
\GetSafeData.cs 安全获取数据类
\MyOA\App_Code\DataAccessLayer 网络办公数据访问层,包括文件:
\Database.cs 数据访问类
\MyOA\App_Code\UserControls 网络办公用户控件,包括文件:
\LeftTree.ascx 权限树菜单控件
\MyOA\DB\MyOA_CreateTable.sql 网络办公数据库创建脚本
\MyOA\DB\MyOA_InitData.sql 网络办公数据库数据初始化脚本
\MyOA\Images\ 网络办公系统图片文件夹
\MyOA\Styles\Styel.css 网络办公系统样式表文件
\MyOA\Default.aspx 系统首页
\MyOA\FileAdd.aspx 添加公文页面
\MyOA\FileDetail.aspx 查看公文详细信息页面
\MyOA\FileList.aspx 浏览、查询公文页面
\MyOA\Login.aspx 登录页面
\MyOA\LogView.aspx 日志管理页面
\MyOA\PlanList.aspx 工作计划管理页面
\MyOA\RoleManage.aspx 权限管理页面
\MyOA\UserAdd.aspx 添加用户页面
\MyOA\UserList.aspx 浏览、查询用户页面
\MyOA\UserResetPwd.aspx 用户修改密码页面
\MyOA\UserUpdate.aspx 修改用户信息页面
虽然不是VB,不过都是.net,应该能看懂吧。
试试这个怎么样,添加在子进程里面,就加在你批量传输代码里的每一个传输后面,也就是大批量中的每传输一个数据就暂停一下,而不是每一个大批量才暂停一下
System.Threading.Thread.Sleep(10) '让它走慢一点