VB编写程序:设计一个程序,当单击窗体时,在窗体上显示任意一幅图片。怎样 *** 作?

VB编写程序:设计一个程序,当单击窗体时,在窗体上显示任意一幅图片。怎样 *** 作?,第1张

首先添加一个窗体,在这个窗体上加一个文本框的控件,在掘闹这个文本框的单击事吵族件中写如下的程序:

Dim num, sum, it(1), n, t, h

Private Sub Form_Click()

File1.Refresh

sum = 0

List1.Clear

For i = 0 To File1.ListCount - 1

t = Split(File1.List(i), ".")(UBound(Split(File1.List(i), ".")))

If LCase(t) = LCase("jpg") Or LCase(t) = LCase("bmp") Or LCase(t) = LCase("gif"升散弊) Then List1.AddItem File1.List(i): sum = sum + 1

Next

h = Rnds(sum)

Print h

Image1.Picture = LoadPicture(List1.List(h))

End Sub

Private Sub Form_Load()

File1.Visible = 0

List1.Visible = 0

num = -1

End Sub

Function Rnds(ByVal Value)

re:

DoEvents

Randomize

n = Fix(Rnd * Value)

If num = 1 Then num = -1

num = num + 1

it(num) = n

If it(0) = it(1) Then GoTo re

Rnds = n

End Function

'添加image1、file1、list1控件各一个

在桌面上,鼠标左键双击程序,在打开的VB6主界面上,左边是工具菜单栏,单击标签按钮,兆岁在Form1窗口上,绘制出悔猜腊一Label1,然后在其属性窗口上改个名字,如Caption为第一数,如下图所示。

接着,用同样的方法,在Form1窗口上绘制出第二数,并且在左边工具菜单栏,单击文本框按钮,并绘制出来。在文本框属性栏的Text属性上,将其Text1删除,也就是清空数据,如下图所示。

然后,反复用第一步骤和第二步骤做成如图所示的界面来,学习需要反复练习,在练习中不断进步。这里是做简单的加法程序,如下图所示。

接着,加法程序的界面做好后,还不能执行加法运算,必须还要在Form1窗口上绘制出一个命令按钮来,在左边工具菜单栏,单击命令按钮,并绘制出来。然后给其属性窗口下Caption改名为计算,如下图所示。

然后,程序看起来是做好了,单击如图所示的运行按钮,d出自己做出的Form1窗口,输入数字3和6,然后单击计算。可是结果并没有出现,如下图所示。

最后,前面5个步骤只是做碧滑了程序的界面,想要程序出结果,那必须加些代码了,既然是简单程序,只加一行代码就可以了。双击命令按钮,在代码窗口中输入如下:Text3.Text = Val(Text1.Text) + Val(Text2.Text)后,再单击运行,输入数字,单击计算,此时就出现结果了,如下图所示。

一些led程序,常常带有 开发 组件,当中提供了vb,vc,delphi等的dll,并有详细函数说明,调用即可。

给你个例子:

点阵图文屏通讯协议

 通讯

(1)232口通讯:8位数据位, 1位停止位, 标志效验, 波特率为19200

 通讯顺序为:

1、 先初始化232端口。

2、 传送屏参数设置帧。

3、 传送屏功能设置帧。

4、 传送显示属性帧。

5、 传送点阵数据帧

传送每一脊辩屏的全部“点阵数据”,按顺序传送完每一幕数据。

点阵数据处理:从左到右,从上到下,每8点为1字节。

对于双色屏,同时传送红色、绿色。

6、 送开始显示命令帧04。

 主要功能帧定义:

(0x06)回传接收帧:1字节回传

 通讯头,任何一帧通讯必需要。(6字节)

1 2 3 4 5 6

0x5a 0xa5 len addr snum Command

说明:

0x5a,0xa5 两个起始标志字节。

Len 每帧长度:从1开始,长度不超过250个字节。

Addr屏号: 0-255,其中0是广播方式

Snum通讯包计数:0-255,通讯包序号,从0开始,每次发送完成加1,重发的数据序号不变。

Command:命令字节标志。

CheckSum 校验和,从起始字节到校验和之前的所有字节的异或。

应答:接收成功返回1字节:0x06。

 屏复位功能(0A)

1 2

通讯头 功能值 CheckSum

功能值:0-复位,1-开机,2-关机

 屏参数设置帧(0B)

1 2 3 4 5 6 7 8 9

通讯头 卡型号 W高位 W低位 H高位 H低位 颜色 扫描 亮度

10 11 12 13 14 15 16 17 18 19 20

极性 保留 保留CheckSum

卡型号:(区别不同存储类型)

颜色:0-单色,1-双色,2-三色 ,3-256级灰度

扫描:0-1/16,1-1/8,2-1/4

亮度:0-7级

 屏功能设置帧(0C)

1 2 3 4 5 6 7 8 9

通讯头迅顷 开机时 开机分 关机时 关机分 保留 保留 保留 保留 CheckSum

 时钟帧(0x0E)

1 2 3 4 5 6 7 8

通讯头 秒 分 时 日 月 星期 年 CheckSum

时间数据以10进制的方式表示。例如10进制的25分,表示成16进制是 25h。

发送成功返回 0x06

◆ 显示属性帧(0x0F)

1 2 3 4 5 6 7 8

通讯头 引入方式 引入速度 追加方式 停留时间 引出方式 时钟方式 显示时钟 时钟

停留时间 ….. CheckSum

7、 显示时钟:

0 不显示

1 年-月-日 星期

2 时:分:秒 温度

3 年-月-日 星期 时:分:秒

 点阵数据帧(0x10)

1 2 3 …

通讯头 点阵数据 点阵数据 点阵数据 … CheckSum

;每屏的数据 横向取模,每8个点组成一个字节,左边是高位。Byte0-byten

;数据排列的格式

;三色 Byte0红,Byte0绿,Byte0兰,Byte1红,Byte1绿,Byte1兰,

;双色 Byte0红,Byte0绿, Byte1红,Byte1绿,

;单色 Byte0红,Byte1红,

 执行命令帧(0x04)

1 2 3 4 5

通讯头 开始页高位 开始页

低位 结束页高位 结束页

低位 CheckSum

◆ 亮度命令帧(0x11)

1 2 3 4 5 6 7

通讯头 亮樱昌缺度值 时间段1

开始时 时间段1

开始分 时间段1

结束时 时间段1

结束分 时间段1

亮度值 时间段2

开始时

8 9 10 11 12 13 14 15

时间段2

开始分 时间段2

结束时 时间段2

结束分 时间段2

亮度值 时间段3

开始时 时间段3

开始分 时间段3

结束时 时间段3

结束分

16 17 18 19 20 21 22

时间段3

亮度值 时间段4

开始时 时间段4

开始分 时间段4

结束时 时间段4

结束分 时间段4

亮度值 CheckSum

亮度值:0-7级(最暗-最亮)

8 自动调整亮度(需要硬件支持)

9 使用时间段调整亮度

 设置波特率命令帧(0x0D)

1 2

通讯头 波特率 CheckSum

波特率值:0-9600,1-19200,2-38400,3-57600

5a a5 07 00 00 0d 00 f5 9600

5a a5 07 00 00 0d 01 f4 19200

5a a5 07 00 00 0d 02 f7 38400

5a a5 07 00 00 0d 03 f6 57600

 设置单元板命令帧(0x12)

1 2

通讯头 编号 CheckSum

波特率值:0-9600,1-19200,2-38400,3-57600

5a a5 07 00 00 12 00 ea

5a a5 07 00 00 12 01 eb

5a a5 07 00 00 12 02 e8

5a a5 07 00 00 12 03 e9

5a a5 07 00 00 12 05 ef

5a a5 07 00 00 12 06 ec

 引入、引出、追加方式

InMode0=左移入←

InMode1=右移入→

InMode2=上卷入↑

InMode3=下卷入↓

InMode4=左跳入←

InMode5=右展开→

InMode6=左展开←

InMode7=上展开↑

InMode8=下展开↓

InMode9=中间-两端展开

InMode10=两端-中间展开

InMode11=中间-上下展开

InMode12=上下-中间展开

InMode13=立即显示

InMode14=预备

InMode15=随机显示

OutMode0=左移出←

OutMode1=右移出→

OutMode2=上卷出↑

OutMode3=下卷出↓

OutMode4=左跳出←

OutMode5=右闭合→

OutMode6=左闭合←

OutMode7=上闭合↑

OutMode8=下闭合↓

OutMode9=中间-两端闭合

OutMode10=两端-中间闭合

OutMode11=中间-上下闭合

OutMode12=上下-中间闭合

OutMode13=立即消失

OutMode14=预备

OutMode15=随机消失

DemoMode0=正常显示

DemoMode1=下页连续


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/12557628.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存