VB实例(含代码和窗体)

VB实例(含代码和窗体)
VB实例(含代码和窗体)

VB实例

第一天、使用VB收发电子邮件

大叔:我说LOLI呀,既然你已经学习过VB的基础知识,也做过一些简单的程序,那么我也就不浪费口水教你认识界面、了解控件和学习语法了。不如我来教教你怎么样制作出一些切实可用的程序,这样既能够加深对VB的认识,还可以让你拥有十足的成就感呢!

LOLI:好呀,那做一些什么程序呢?

大叔:当然不会像我哥哥当年那样简单至极的程序,而是一些具有实用性的程序,也可以做一个小游戏之类的,你看怎么样?

LOLI:好的,不过今天别教我做游戏,不然明天就没有心思学了。

大叔:这个我自然知道,那我们就开始动手制作一个收发电子邮件的程序吧。

LOLI:收发电子邮件?这个会不会很难呢?

大叔:正所谓会者不难,难者不会,有我这位名师指点,你还怕什么呢?开始动手吧!

一、准备工作

大叔:在VB中编写电子邮件程序需要通过调用微软公司的MAPI(Messaging Application Programming Interface,消息应用程序编程接口),这需要借助两个实现电子邮件收发功能的核心控件:MAPI会话控件和MAPI消息控件。MAPI会话控件用于建立和控制一个Microsoft Mail会话,MAPI消息控件用于创建和收发邮件消息。此外,Windows系统中必须要有遵从MAPI的邮件系统,比如Exchange、Outl ook等软件,而还要进行一番设置,确保邮件系统可以正常使用。

LOLI:呵呵,没关系,我用的就是Outlook,正好符合要求。不过你说的MAP I控件在哪里找呢?

大叔:在VB中就有现成的,不过程序没有直接放置在工具箱里,需要我们自己将MAPI控件加入VB工具箱。首先直接在VB左边的控件栏中右击鼠标,并在弹出菜单中选择“部件”命令,这时可以激活部件设置窗口,在其中的“控件”列表框中选取“Microsoft MAPI Controls”一项(如图1所示),接着按下“确定”按钮之后可以发现工具箱中将多出了两个图标,这就是MAPI会话控件和MAPI消息控件的图标(如图2所示)。

图一图

二、邮件发送程序

大叔:添加好我们所需要的控件之后,就开始定制邮件的发送程序吧。这个邮件发送程序的基本处理过程是:根据用户输入信息组成邮件,然后使用MAPI消息控件的Send方法将邮件发出。具体的方法按照下述步骤完成:

1、新建一个VB项目,并将缺省窗体Form1的Caption属性设置为“发送邮件”。

2、在Form1中加入一个MAPI会话控件MAPISession1和一个MAPI消息控件MAPIMessages1。

3、在Form1中加入三个TextBox控件,将它们的名称属性分别设置为“txtSend To”、“txtSubject”和“txtMessage”,另外还要将txtMessage的Multiline属性设置为“T rue”。这三个TextBox控件将分别用于填写邮件的收件人地址、邮件主题和邮件正文。

4、在Form1中加入三个Label控件,将它们的Caption属性分别设置为“收件人”、“主题”和“内容”,并将它们放在合适的位置用以标注相应的TextBox控件。

5、在Form1中加入一个Command Button控件,将其Caption属性和名称属性分别设置为“发送”和“Send”。

所有的控件添加完毕之后应该如图3所示。

图三LOLI:还挺像这么回事的呢,接着应该填写代码了吧。

大叔:是呀,下面就是代码部分的内容:

1、将下列代码加入Form1的Form_Load事件:

Private Sub Form_Load()

MAPISession1.SignOn/运行程序之后进行邮箱登录操作

End Sub

2、将下列代码加入Form1的Form_Unload事件:

Private Sub Form_Unload(Cancel As Integer)

MAPISession1.SignOff/退出程序时候进行退出邮箱操作

End Sub 3、将下列代码加入cmdSend的Click事件:

Private Sub cmdSend_Click()

With MAPIMessages1

.MsgIndex = -1

.RecipDisplayName = txtSendTo.Text/收信人地址

.MsgSubject = txtSubject.Text/邮件主题

.MsgNoteText = txtMessage.Text/邮件正文

.SessionID = MAPISession1.SessionID/发送程序和邮件工具之间建立的任务数

.Send

End With

MsgBox "邮件发送完毕!", , "发送邮件"/发送成功显示信息框

End Sub

这样一个电子邮件发送部分就制作完成了,运行程序之后只要填写好邮件的收件人、主题和内容后,按下“发送”命令按钮,邮件就已经成功地发往目的地了(如

图4所示)。图4

LOLI:真的发送出去了,不过这是不是你的障眼法呢?我要收到这封信才相信!

大叔:对我还不相信?好吧,下面再制作一个邮件接收程序来收取这封信件。

三、邮件接收程序

大叔:邮件接收程序比邮件发送程序要复杂一些,这个程序首先需要使用MAP I消息控件的Fetch方法读取邮件,这个过程将把用户收件箱中所有未读邮件全部装入MAPI消息控件中。接着,检查MAPI消息控件的MsgCount属性以确定通过Fet ch方法读取的邮件的总数,然后可以通过设置MAPI消息控件的MsgIndex属性来指定具体需要处理哪一封邮件。需要说明的是,MsgIndex属性值的计数是从0开始的,也就是说,第一封邮件的索引号是0,第二封邮件的索引号是1,依次类推。具体步骤如下:1、新建一个VB项目,将缺省窗体Form1的Caption属性设置为“接收邮件”。

2、在Form1中加入一个MAPI会话控件MAPISession1和一个MAPI消息控件MAPIMessages1。

3、在Form1中加入三个Label控件和一个TextBox控件,将三个标签控件的名称属性分别设置为“lblMsgDateReceived”、“lblMsgOrigDisplayName”和“lblMsgSubje ct”,将TextBox控件的名称属性设置为“txtMsgNoteText”,并将标签控件的Caption 属性和文本框控件的Text属性的内容清空。这四个控件将分别用于显示邮件的日期、发件人、主题和内容。

4、将txtMsgNoteText控件的Locked属性和Multiline属性设置为“True”,Scrol

lBars属性设置为“2-Vertical”。

5、在Form1中再加入四个Label控件用于标注上述四个控件,将它们的Capti on属性分别设置为“日期”、“发件人”、“主题”和“内容”。

6、在Form1中加入一个Label控件,将其名称属性设置为“lblMsgCount”,Cap tion属性设置为“第0 封邮件,总计0 封邮件”。这个控件用于显示接收的邮件总数以及当前正在处理第几封邮件。

7、在Form1中加入三个Command Button控件,将它们的名称属性分别设置为“cmdPrevious”、“cmdNext”和“cmdClose”,Caption属性分别设置为“上一封”、“下一封”和“关闭”。

LOLI:那么具体的程序代码呢?

大叔:又着急了不是?我还会骗你吗?下面就是具体的程序代码:

1、编写一个子程序FetchNewMail:

Public Sub FetchNewMail()

MAPIMessages1.FetchUnreadOnly = True

MAPIMessages1.Fetch/Fetch命令将信件抓到系统存贮器的inbuffer中

End Sub

2、编写一个子程序DisplayMessage:

Public Sub DisplayMessage()

lblMsgCount.Caption = "第" & Ltrim(Str(MAPIMessages1.MsgIndex + 1)) & " 封邮件,总计" & Ltrim(Str(MAPIMessages1.MsgCount)) & " 封邮件"/由MsgCount知道信件数量,再用MsgIndex设置要看

哪一封信件的内容、标题lblMsgDateReceived.Caption = MAPIMessages1.MsgDateReceived/收取信件的日期

txtMsgNoteText.Text = MAPIMessages1.MsgNoteText/收取信件的内容

lblMsgOrigDisplayName.Caption = MAPIMessages1.MsgOrigDisplayName/发送邮件的姓名

lblMsgSubject.Caption = MAPIMessages1.MsgSubject/邮件主题

End Sub 3、将下列代码加入Form1的Form_Load事件:

Private Sub Form_Load()

MAPISession1.SignOn

MAPIMessages1.SessionID = MAPISession1.SessionID

FetchNewMail/调用Fetch子程序

DisplayMessage/调用DisPlayMessage子程序

End Sub

4、将下列代码加入cmdPrevious的Click事件:

Private Sub cmdPrevious()

If MAPIMessages1.MsgIndex > 0 Then

MAPIMessages1.MsgIndex = MAPIMessages1.MsgIndex - 1/当收取信件超过1封的时候,通过“上一封”按钮查看前面的信件

DisplayMessage

Else

Beep

End If

End Sub

5、将下列代码加入cmdNext的Click事件:

Private Sub cmdNext_Click()

If MAPIMessages1.MsgIndex < MAPIMessages1.MsgCount - 1 Then

MAPIMessages1.MsgIndex = MAPIMessages1.MsgIndex + 1/当收取信件超过1封的时候,通过“下一封”按钮查看后面的信件

DisplayMessage

Else

Beep

End If

End Sub

6、将下列代码加入cmdClose的Click事件:

Private Sub cmdClose_Click()

Unload Me

End Sub

程序运行后,在窗体加载过程中,窗体Load事件中的代码会读取新邮件,如果有新邮件,就显示第一个新邮件,如果有多个新邮件,则可以使用“上一封”和“下一封”命令按钮前后翻阅。你再看看,这封收取下来的邮件是不是我们刚才发送出去的?

LOLI:呵呵,真厉害!其实刚才我知道你肯定可以收到这封邮件的,只不过是说着玩的,嘿嘿。我来试着给别人发送一些邮件。

大叔:那你就用它给好朋友发送几封邮件,告诉他们是用你自己编写的程序发送的,他们保证大吃一惊呢。

第二天、自制媒体播放器

LOLI:大叔来看我刚刚下载的《黑衣人2》,可好玩了。

大叔:用MediaPlayer看的?不如这样吧,今天我教你怎样制作一个媒体播放器,你看如何?

LOLI:自己做的媒体播放器也可以看《黑衣人2》吗?

大叔:那是当然的,不然我岂不是变成了大骗子?

LOLI:呵呵,那感情好呀,这样我可以拿到班上给同学炫耀一下喽。

大叔:我们这个媒体播放器的目的是可以播放VCD、WAV、MP3等媒体文件,而且全部的功能基本上和Windows附带的媒体播放器差不多。其实要制作这样一个播放器并不困难,因为在VB中提供了一个MediaPlayer控件,它帮我们解决了很多实际问题,只要按照下面的步骤就可以了。

1、因为我们需要使用到MediaPlayer控件,所以刚开始就要右击工具面板并在部件添加窗口里选择“Windows MediaPlayer”来添加这个控件,同时还要添加“Comm onDialog”控件。

2、在窗口设计器中创建一个MediaPlayer控件、五个Command Button控件和一个CommonDialog控件。

3、将Form1的Caption属性更改为“大叔的媒体播放器”。

4、分别将五个Command Button控件的Caption属性分别命名为“暂停”、“播放”、“停止”、“选择”和“退出”,然后把它们按照一定的位置放好。

5、选中CommonDialog控件之后,在右边属性的“Filter”对话框中输入“*.RMV B|*.wav)|*.wav|MIDI(*.mid)|*.mid|MPEG(*.mpeg)|*.mpeg|DAT(*.dat)|*.dat| AVI(*.avi)|*.avi|MP3(*.mp3)|*.mp3”的文件过滤选项,这样就可以支持各种常见的媒体影像文件了。

LOLI:看起来和真正的MediaPlayer差不多呀,还蛮有专业水准的呢。

大叔:是呀,这全要归功于MediaPlayer控件,下面就是代码编写部分内容了:

1、首先要双击Form1窗口,并选择“通用”对象,输入下面的通用代码:

Option Explicit

Dim playfilename As String/定义播放文件的名称

Dim playposition As Double/定义当前播放的位置

2、双击“暂停”按键并输入下列代码:

Private Sub Command1_Click()

Command1.Enabled = False/暂停按键失效

MediaPlayer1.Pause/暂停播放

playposition = MediaPlayer1.CurrentPosition/当前的播放位置End Sub

3、双击“播放”按键并输入下列代码:

Private Sub Command2_Click()

Command1.Enabled = True/暂停按键有效

Command3.Enabled = True/停止按键有效

MediaPlayer1.filename = playfilename/播放媒体文件名称

MediaPlayer1.SelectionStart = playposition/当前播放的位置

MediaPlayer1.Play/播放媒体文件

End Sub 4、双击“停止”按键并输入下列代码:

Private Sub Command3_Click()

playposition = 0/停止播放

Command3.Enabled = False/停止按键无效

Command1.Enabled = False/暂停按键无效

Command2.Enabled = True/播放按键有效

MediaPlayer1.Stop/停止播放

End Sub

5、双击“选择”按键并输入下列代码:

Private Sub Command4_Click()

CommonDialog1.showopen/打开文件对话框

playfilename = CommonDialog1.filename/记录播放文件名playposition = 0/第一次打开文件时候,播放位置为0

End Sub

6、双击“退出”按键并输入下列代码:

Private Sub Command5_Click()

Unload Me/卸载窗口

End/结束程序

End Sub

代码全部输入完毕之后,运行程序后按下“选择”按键,此时会弹出打开文件对话框供你选择需要播放的文件。

选中相应的文件之后,就可以进行欣赏了。如果需要在别的计算机上使用这个程序的话,还可以选择“工具”菜单下的“生成.exe文件”选项来制作一个可以直接运行的exe格式文件,这样将程序复制到其他机器上就可以使用了。”

LOLI:好开心呀,我来试试用自己做的程序看《黑衣人2》,哈哈,真过瘾!

大叔:瞧你乐得这个劲,那你就慢慢看吧。对了,通过VB还可以制作Flash 动画、QuickTime等多种格式的播放器,你自己不如依葫芦画瓢的尝试一下,看看你的天份有多少,呵呵!

LOLI:放心吧,保证不会让你失望的!

第三天、定时闹钟程序

LOLI:叮当大叔,你知道Windows中的计划任务工作原理吗?它能够在指定的时间开始相应的工作,蛮方便的呢。

大叔:不要认为它很神秘,其实用VB来设计这样一个程序是非常容易的事。不如今天就教你怎样制作一个简单的定时闹钟程序?这样可以在指定的时间到达之后自动运行设置好的程序,你看怎么样?

LOLI:好呀,好呀,赶紧开始吧。

大叔:首先要添加程序所需要的控件。

1、新建一个工程,将Form1的startupposition属性设置为“2-centerscreen”,同时将maxbutton属性设置为“False”。这样程序运行之后窗口出现在屏幕中间,而且最大化按钮处于无效状态。

2、在Form1窗口中添加三个Command Button,分别将它们的Caption属性更改为“预设文件”、“设定时间”、“即时启动”和“退出”。

3、在“预设文件”按钮后面放置一个Label控件用于显示预设的文件路径和名称,并且将它的Caption属性设置为空。

4、在“设定时间”按钮后面放置三个Label控件,其中Label2和Label4的Capti on属性设置为空,Label3控件的Caption属性设置为“当前时间:”。

5、添加一个common dialog控件,不过别忘记需要从部件添加窗口里添加到工具箱中哟。

6、添加一个Timer控件,并将它的interval属性设置为500。

所有控件添加设置完成后应该如图所示。

LOLI:就这么简单的几个控件可以实现定时闹钟的功能吗?

大叔:别小瞧了VB的功能,看完下面的代码再说吧。1、双击Form1窗口,并选择“通用”对象,输入下面的通用代码:

Option Explicit

Dim AlarmTime/申明变量

2、双击“预设文件”按钮并输入下面的代码:

Private Sub Command1_Click()

Call dialog/调用dialog子程序

End Sub

3、双击“设定时间”按钮并输入下面的代码:

Private Sub Command2_Click()

AlarmTime = InputBox("请输入你想设定的时间,例如(19:12:00)", "小闹钟") If AlarmTime = "" Then

Exit Sub

If Not IsDate(AlarmTime) Then/isdate函数是判断输入的是否可转换成date格式

MsgBox "你所输入的不是时间格式,请重试!", ,"Wrong" Else AlarmTime = C Date(AlarmTime)

End If/判断输入的是否可转换成time格式

End Sub

4、双击“即时启动”按钮并输入下面的代码:

Private Sub Command3_Click()

Call deng/调用deng子程序

End Sub

5、双击“退出”按钮并输入下面的代码:

Private Sub Command4_Click()

end

End Sub

6、双击Form1窗口,选择“Click”事件,并输入下列代码:

Private Sub Form_Click()

frmAbout.Show/显示关于对话框

End Sub

7、双击Form1窗口,选择“Load”事件,并输入下列代码:

Private Sub Form_Load()

Command3.Enabled = 0

AlarmTime = ""/初始化时command3为不可用的

End Sub

8、双击Form1窗口,选择“Resize”事件,并输入下列代码:

Private Sub Form_Resize()

If WindowState = 1 Then

mintime/如果窗口被最小化,则调用mintime程序

else

caption="小闹钟"

End If

End Sub 9、编写mintime子程序:

Sub mintime()

Caption = Format(Time, "long Time")/使用长时间格式来显示时间End Sub

10、双击Timer1控件并输入下列代码:

Private Sub Timer1_Timer()

f Label2.Caption <> CStr(Time) Then

Label2.Caption = AlarmTime

Label3.Caption = Time/显示时间每秒钟的变化

End If

If Time >= AlarmTime Then

Call deng/判断如果现在的时间超过了设定的时间,则调用deng子程序End If

If WindowState = 1 Then

If Minute(CDate(Caption)) <> Minute(Time) Then

mintime/最小化时显示时间每分钟的变化

End If

End If

End Sub

11、编写dialog子程序:

Sub dialog()

CommonDialog1.Flags = cdlCFBoth

CommonDialog1.ShowOpen

Label1.Caption = CommonDialog1.filename/把打开的文件名给于label 1

If Label1 <> “" Then

Command3.Enabled = -1/如果label1不为空时,则command3即可用

Else

Exit Sub

End If

End Sub

12、编写deng子程序

Sub deng()

Dim ss

ss = Shell(Label1.Caption, 1)/启动指定的文件,并且结束小闹钟程序End

End Sub

好了,现在试着运行程序看看。先点击上部的“预设文件”按钮添加一个定时自动运行的程序,然后通过“设定时间”按钮设置好一个时间,这样当时间到达的时候就会自动运行你所需要的这个程序了。

LOLI:这倒不错,以后我用电脑学习一段时间之后就可以通过这个程序来定时运行游戏,这样就不会错过休息娱乐的时间了,哈哈。

大叔:不会吧,我教你做的这个程序就用来定时玩游戏?我真是服了你!不管怎么样,好好研究一下这个程序,虽然很小巧,但的确是非常实用的!

第四天、打字练习程序

大叔:我说LOLI呀,前几分钟之前还看你在编程序,怎么现在又开始玩游戏了?

LOLI:都是昨天定时程序的作用呀,我现在是编程10分钟,游戏50分钟,这样劳逸结合,安排的不错吧。

大叔:有你这么安排的吗?整个就是在浪费时间!别玩游戏了,今天教你一些什么呢?

LOLI:最好是寓教于乐的程序最好,比如一边玩游戏一边学习的。

大叔:给我出难题?那就教你一个寓教于乐的程序,来制作一个打字练习程序怎么样?

LOLI:真的?也好,我先看看再说。

大叔:OK,还是老规矩,先创建一些控件再说。

1、新建一个工程,将Form1的Caption属性修改为“打字练习”,同时将MaxB utton和MinButton两个属性都设置为“False”,这样在程序运行之后可以取消右上角的最小化和最大化按钮。

2、添加一个Frame控件,将它的Caption属性设置为空,并且将BorderStyle

属性设置为“0-None”,然后在这个Frame中添加1个Label控件。

3、在Form1窗口中添加4个Label控件,其中两个Label控件的Caption属性分别设置为“得分”和“剩余”,另外两个Label控件的BackStyle和BorderStyle属性均设置为“1-Opaque”和“1-Fixed”,这样将使得它们以3D立体形式显示出来,最后分别将这两个Label控件的Caption属性设置为“0”和“200”。

4、在Frame区域中再添加一个Label控件。

5、在Form1窗口中添加一个Command Button控件,将它的Caption属性更改为“开始”。

6、添加三个Timer控件,并将它的interval属性分别设置为100、1000和100。

所有控件添加设置完成后应该如图所示。

LOLI:看起来好复杂的样子,代码编写部分是不是也很繁琐?

大叔:说难不难,说简单也不简单。我们的目的是通过嵌套在Frame中的两个Label控件来随机显示字母,然后通过键盘输入字母,由程序检验输入的字母和显示的字母是否一样,如果一样则说明正确,可以加分,否则说明输入错误。其实最关键要把握住编程的思想,这个说起来就话长了,还是看看具体的源代码怎么写吧。

1、双击Form1窗口,并选择“通用”对象,输入下面的通用代码:

Option Explicit

Dim score As Integer/定义变量

Dim speed As Integer/定义变量

2、编写init子程序(用于设置第一个出现的字母)

Sub init()

Label1.Caption = Chr(Int(Rnd * 26) + 49)/设定Label1随机显示的字母speed = Int(Rnd * 100 + 100)/设定Label1随机显示字母的速度

Label1.Left = Int(Rnd * Frame1.Width)/设定Label1代表字母出现的左边位置

Label1.Top = Frame1.Top/设定Label1代表字母出现的顶部位置

End Sub

3、编写init1子程序(用于第二个出现的字母)

Sub init1()

Label6.Caption = Chr(Int(Rnd * 26) + 97)/设定Label2随机显示的字母speed = Int(Rnd * 100 + 100)/设定Label2随机显示字母的速度

Label6.Left = Int(Rnd * Frame1.Width)/设定Label2代表字母出现的左边位置

Label6.Top = Frame1.Top/设定Label2代表字母出现的顶部位置

End Sub

4、双击“开始”按钮并输入下列代码:

Private Sub Command1_Click()

init/调用init子程序

Timer1.Enabled = True/激活Time1控件

Timer2.Enabled = True/激活Time2控件

Command1.Visible = False

Label5.Caption = 200

Label4.Caption = 0

End Sub

5、双击Form1窗口,并选择“KeyPress”对象,输入下面的用代码:

Private Sub Form_KeyPress(KeyAscii As Integer)

If Chr(KeyAscii) = Label1.Caption Then/校验键盘输入字符和Label1显示的字符

init

score = score + 1/得分加1

Label4.Caption = score

End If

If Chr(KeyAscii) = Label6.Caption Then/校验键盘输入字符和Label2

显示的字符

init1

score = score + 1

Label4.Caption = score/Label4控件显示得分情况

End If

End Sub

6、双击Form1窗口,并选择“Load”对象,输入下面的用代码:

Private Sub Form_Load()

Randomize

Timer1.Enabled = False/Time1控件失效

Timer2.Enabled = False/Time2控件失效

End Sub

7、双击Timer1控件并输入下列代码:

Private Sub Timer1_Timer()

Label1.Top = Label1.Top + speed

If Label1.Top > Frame1.Height Then/第一个字母超出屏幕范围的时候调用init子程序重新出现一个字母

init

End If

Label6.Top = Label6.Top + speed

If Label6.Top > Frame1.Height Then/第二个字母超出屏幕范围的时候调用init1子程序重新出现一个字母

init1

End If

End Sub

8、双击Timer2控件并输入下列代码:

Private Sub Timer2_Timer()

Label5.Caption = Val(Label5.Caption) - 1/扣除剩余个数中的一个

If Val(Label5.Caption) <= 0 Then

Timer1.Enabled = False/剩余个数小于等于0的时候结束练习

Label1.Caption = ""/不显示字母

Label6.Caption = ""

Select Case score

Case Is <= 80

MsgBox vbCrLf + "别放弃,再来一次!"/显示信息框

Case Is < 120

MsgBox vbCrLf + "成绩不错,加油!"

Case Is < 150

MsgBox vbCrLf + "再努力做的更好一些!"

Case Is > 180

MsgBox vbCrLf + "好厉害!最高分呀!"

End Select

Command1.Visible = True

Label4.Caption = 0

Label5.Caption = 200

Timer1.Enabled = False

Timer2.Enabled = False

End If

End Sub

上面就是全部的源代码了,你可以运行试试看。

LOLI:呵呵,想测试我的打字速度?那还不是小菜一碟?

大叔:嘿嘿,别说大话,先运行一下再说。怎么样,得了多少分?还小菜一碟吗?

LOLI:速度太快了,要是慢一点的话,我肯定能够得高分!

大叔:慢一点?慢一点怎么能体现出你的高超技术呢?其实速度可以通过init 和init1程序来控制,只要将数值更改的小一些就可以轻轻松松的得到高分了。

LOLI:我想到了一个好办法,先把速度降低,然后自己得一个高分,截图保存之后拿给朋友看看,让他们也测试一下,但是给他们的程序就是速度非常快的,这样就可以大大的刺激他们一下了,哈哈哈哈。

大叔:整天就想着这些损人不利己的事情,有空还是真正练习一下自己的指法比较好,省得到时候出丑呢!

第五天、Flash动画播放器

LOLI:叮当大叔,上次你教我做媒体播放器之后不是让我自己做一个Flash动画的播放器吗?但是我始终没有搞定,还是你来帮帮忙吧。

大叔:咦,现在怎么变得谦虚起来了?既然是这样,就由我出马搞定吧。

一、准备工作

大叔:制作Flash动画播放器的时候需要调用一个Flash控件---Swflash.ocx,这个控件可以通过安装Flash,或者通过安装Windows 98自带的Flash插件来搞定。比如采取后一种方法,只要在控制面板中选择“添加/删除程序”图标,进入“Windows 安装程序”界面之后在“多媒体”一项中点选“Macromedia Shockwave Flash”前的复

选框确定即可。

LOLI:不用这么麻烦吧,其实我的计算机中已经安装过Flash了,还用它制作过一些动画呢。

大叔:切,你不早说?浪费我这么多口水。不过即使已经安装了Flash,也要用鼠标右击工具箱,并在弹出的部件添加窗口中选把Shockwave flash、Microsoft Co mmon Dialog Control 6.0 (SP3)和Microsoft Windows Common Control 6.0 (SP3)这三个控件添加到工具箱中。完成这一步设置后,就可以开始制作Flash动画播放器了。

二、制作Flash播放器

大叔:咱们制作的这个Flash动画播放器要能够一次打开多个Flash动画文件,可以在播放过程中选择播放打开的文件、随时改变播放质量、画面大小等状态,而且在播放过程中可以随时对播放的当前帧数进行调整或者手动进行逐帧播放,在状态栏里有当前播放状态的相关说明等等。下面先来添加程序所需要的控件。

1、新建一个工程,将Form1的Caption属性设置为“大叔的Flash动画播放器”。

2、在Form1窗口中添加一个CommonDialog控件,将CommonDialog1控件的CancelError设置为“True”,DialogTitle设置为“打开Flash动画文件”,Filter属性设置为“Flash动画(*.swf)|*.swf|”,FilterIndex设置为“1”,MaxFileSize设置为“10

240”。

3、在Form1窗口中添加一个Slider控件,将Slider1的SelectRanger的属性设置为“True”,SmallChange属性和LargeChange属性均设置为“10”,TickFrequengcy 属性设置为“20”,TextPosition设置为“1-SldBelowRight”。

4、在Form1窗口中添加3个Label控件,并将Label1的Caption设置为“0帧”,Label2和Label3的Caption设置为空字符串。

5、在Form1窗口中添加8个CommandButton控件,将它们的名称属性分别设置为“cmdOpen”、“cmdPlay”、“cmdPause”、“cmdPre”、“cmdPreFrame”、“cmdNextF rame”、“cmdNext”和“cmdExit”,Caption属性分别设置为“打开”、“播放”、“暂停”、“上一个”、“上一帧”、“下一帧”、“下一个”和“退出”。

6、在Form1窗口中添加一个Status Bar控件,在这个控件上单击鼠标右键并选择“属性”命令,从弹出的窗口中选择“窗格”标签,用鼠标点击“插入窗格”5次表示插入5个状态窗格,在索引1-5中分别设置“文本”属性分别为“共打开了0个文件”、“状态:”、“等待”、“帧数:”、“0”。

7、接着按下“Ctrl+E”的组合按键进入菜单编辑器,设置第一个菜单标题为“显示控制”,名称为mnuDisplay。在“显示控制”菜单下分别设立“全部显示”、“随窗口大小变化”和“缩放至窗口大小”子菜单标题,名称分别为:mnuDisplay0、mnuDisplay1和mnuDisplay2。设置第二个菜单标题为“质量控制”,名称为mnuQuality。在“质量控制”菜单下分别设立“低分辨率”和“高分辨率”的子菜单,名称分别为mnuQuality0和mnuQuality1。设置第三个菜单标题为“播放控制”,名称为mnuPlayControl。在“播放控制”菜单下分别设立“循环播放”、“放大画面”和“缩小画面”子菜单,名称分别为mnuLoopPlay、mnuZoomIn和mnuZoomOut。

vb练习题,电子版第13章多窗体程序设计

第十三章多窗体程序设计 教学要求: 了解多重窗体应用程序的适用范围与特点,掌握多重窗体应用程序建立的主要步骤;了解多重窗体程序的执行与保存特点,了解Visual Basic工程的结构特点(标准模块、窗体模块、Sub Main过程);掌握闲置循环与DoEvents语句的用法。 知识点: 多重窗体应用程序;多重窗体应用程序的建立、执行、保存;Visual Basic工程的结构特点;闲置循环与DoEvents语句。 内容导航: 一、建立多重窗体应用程序 (一)多重窗体程序设计有关的语句和方法 1.Load语句。格式:Load 窗体名 2.Unload语句。格式:Unload 窗体名 3.Show方法。格式:[窗体名.]Show[模式] 4.Hide方法。格式:[窗体名.]Hide (二)建立界面 窗体的添加方法有如下4种: 方法一:单击“工程”菜单中的“添加窗体”命令; 方法二:用鼠标右键单击“工程资源管理器”的任何项目,在弹出的快捷菜单中选择“添加”,单击“添加窗体”命令; 方法三:单击工具栏中的“添加窗体”命令; 方法四:通过组合键Alt+P,F。 二、多重窗体程序的执行与保存 (一)指定启动窗体 在缺省情况下,应用程序中的第一个窗体被指定为启动窗体。应用程序开始运行时,此窗体就被显示出来。要改变启动窗体的执行方法如下: 从“工程”菜单中,选取“工程属性”命令,选取“通用”选项卡,在“启动对象”中,选取要作为新启动窗体的窗体,最后单击“确定”按钮。 (二)保存多窗体程序 为了保存多窗体程序,通常需要一下两步: 1.保存模块。 2.保存工程 (三)装入多窗体程序 装入多窗体程序和装入单窗体程序一样,只要打开工程文件,工程中包括的其他文件便会自动装入内存,而不用一一打开。 三、Visual Basic工程结构 Visual Basic工程分为3个层次:工程级(全局)、模块级和过程级,这对变量与类型的定义和使用都是很重要的。

VB窗体美化

学习窗体美化不错的知识 ==================================================================================== 相信大家看过许多形状怪异的窗口吧?可是在VB里,系统提供的只是一个矩形的窗体。如何在VB里实现这种异形窗体呢? 其实原理很简单。首先,在内存中构建一个想要的图形,再通过API函数将窗体设置为此形状,最后将图片放上去就可以了。关键在于如何构建这个想要的图形。让我们看看下面这个图: 。 这张图片中既有白色,也有其他彩色,而我们想要的颜色正是除白色以外的其它颜色。我们可以这样想:在内存中创建一幅一样大小的空的图像,然后只把我们需要的颜色(即非白色)输入内存。这样,就可以创建出我们想要的图形了。 以上是原理,接下来介绍几个API函数。 GetPixel:获取指定对象的某个点的颜色。 定义为:Public Declare Function GetPixel Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long 其中hdc为图形对象的句柄,x、y为坐标。 SelectObject:向内存中的指定地点输入图形。 定义为:Public Declare Function SelectObject Lib "gdi32" (ByVal hdc As Long, ByVal hObject As Long) As Long 其中hdc为内存中图形对象的句柄,hObject为欲输入的图像。 CreateCompatibleDC:在内存中创建一个与指定对象一样的场景(可以理解为图像)。 定义为:Public Declare Function CreateCompatibleDC Lib "gdi32" (ByVal hdc As Long) As Long 其中hdc为指定对象的句柄。 DeleteObject:删除GDI对象(在这里用来删除用完的内存中的图形)。记住,用完后释放资源是非常重要的! 定义为:Public Declare Function DeleteObject Lib "gdi32" (ByVal hObject As Long) As Long

VB教程经典

经典VB基础教程 第1课…………VB基础 第2课…………标签控件 第3课…………文本框 第4课…………命令按钮 第5课…………图片框 第6课…………复选框 第7课…………单选按钮I 第8课…………单选按钮II 第9课…………定时器 第10课…………音乐播放器 本教程由86团学校TeliuTe制作|著作权所有,不得用于商业用途 美丽的校园…… VB程序设计基础 一、程序设计是指为计算机编制一些软件和程序。学习的目的是理解计算机的工作方式和运行的方式。 VB是经典的编程设计语言,也是基础语言之一,简单易学,功能强大,深受广大初学者的喜爱。 VB是运行在Windows视窗操作系统上,设计程序的思想在于在窗口中放置对象和针对对象设计代码。

(一)启动VB:单击“开始”-“程序”-“Microsoft Visual Basic6.0 中文版”选择“标准EXE”,单击“打开”进入窗口。 (二)VB窗口 1、标题栏:在最上面蓝色标题是“工程1-...”,是我们当前正在设计的程序,被称作“工程1”。 2、菜单栏:菜单栏在第二行,包含一组菜单,菜单中有各种命令,我们应该理解操作计算机就是向计算机提供一系列的指令。 (1)“文件”菜单,要求记住“保存”命令,VB要保存两次,注意保存文件到自己的文件夹中。(本书中双引号当中均是指操作命令) (2)“视图”菜单,显示各个窗口,如果一个窗口找不着了,就到这个菜单中找出来。 (3)“运行”菜单,第一个“启动”命令要记住,可以运行我们的程序。 3、工具栏:第三行是工具栏,工具栏是一些最常用的命令,而且是用图标表示的,因而便于形象记忆和操作,要求记住“启动”按钮。(在视窗操作系统中,我们不仅要会认识文字说明,还要特别留意图标含义。) 4、工作区:工作区占据窗口的绝大部分,从左向右包括工具箱、窗体、和属性窗口。 (1)工具箱:在工作区的左侧,包含许多编程用到的基本对象,被称作“控件”。 (2)窗体:中间的灰色的窗口,是我们设计的程序的基本框架,所有的对象都放在这个窗口当中。 (3)小窗口:在右侧有三个纵向排列的窗口。 ①最上面是工程窗口,上边有三个按钮,中间的按钮是显示对象窗口; ②下面是属性窗口,属性是一个对象的名称、大小、颜色等等; ③最下面是布局窗口,里面显示程序运行时的位置,拖动里面的小框可以改变程序的显示位置。 4、下面修改窗体的属性,在右侧的属性窗口中找到Caption项,在它右边的格子里点一下鼠标左键,然后输入“窗体”两个字,观察一下工作区中的窗体的标题是否已经改变,Caption是设置一个应用程序的窗口标题,再在属性窗口

作业一 简单VB程序设计

作业一简单VB程序设计 1.对于窗体,下面______属性在程序运行时其属性设置起作用。 (A)MaxButton (B)BorderStyle (C)Name (D)Left 2.类是对象的抽象,对象则是类的具体化。在窗体上建立的一个控件称为______。 (A)对象(B)容器(C)实体(D)类 3.若要使标签控件显示时不覆盖其背景内容,要对______属性进行设置。 (A)BackColor (B)BorderStyle (C)ForeColor (D)BackStyle 4.用一个程序段对一对象被单击(或双击)作出响应,从而实现指定的操作,称为______。(A)可视画化程序设计(B)事件驱动编程机制(C)过程化程序实际方法(D)非过程化程序设计语言 5.文本框没有______属性。 (A)Enabled (B)Visible (C)BackColor (D)Caption 6.不论何控件,共同具有的是______属性。 (A)Text (B)Name (C)ForeColor (D)Caption 7.要使Form1窗体的标题栏显示"欢迎使用VB",以下______语句是正确的。 (A)Form1.Caption=“欢迎使用VB”(B)Form1.Caption='欢迎使用VB ' (C)Form1.Caption=欢迎使用VB (D)Form1.Caption="欢迎使用VB " 8.要使某控件在运行时不可显示,应对______属性进行设置。 (A)Enabled (B)Visible (C)BackColor (D)Caption 9.要使窗体在运行时不可改变窗体的大小和没有最大化和最小化按钮,只要对下列______属性设置就有效。(A)MaxButton (B)BorderStyle (C)Width (D)MinButton 10.当运行程序时,系统自动执行启动窗体的______事件过程。 (A)Load (B)Click (C)UnLoad (D)GotFocus 11.当文本框的ScrollBars属性设置了非零值,却没有效果,原因是______。 (A)文本框中没有内容(B)文本框的MultiLine属性为False (C)文本框的MultiLine属性为True (D)文本框的Locked属性为True 12.要判断在文本框是否按了Enter键,应在文本框的______事件中判断。 (A)Change (B)KeyDown (C)Click (D)KeyPress 13.将调试通过的工程经"文件"菜单的"生成.exe文件"编译成.exe后,将该可执行文件到其他机器上不能运行的主要原因是______。 (A)运行的机器上无VB系统(B)缺少.frm窗体文件(C)该可执行文件有病毒(D)以上原因都不对 14.当需要上下文帮助时,选择要帮助的"难题",然后按______键,就可出现MSDN窗口及显示所需"难题"的帮助信息。 (A)Help (B)F10 (C)Esc (D)F1 15.Visual Basic有三种工作模式,它们分别是______模式。 (A)设计、编译和运行(B)设计、运行和中断 (C)设计、运行和调试(D)编译、运行和调试 答案:DADBD BDBBA BDADB

用VB编写画图程序

3.设置各控件的相关属性 设置各控件的相关属性,如表11-9所示。表11-9 画图程序各控件属性设置

4.代码设计 (1)引入命名空间: Imports System.Drawing.Drawing2D (2)在FrmPaint类里定义全局变量和mSelect枚举结构: 1.Private g As Graphics '绘图句柄 2.Private pstart As Point, pend As Point '定义画图的起始点,终点 3.Private mChoice As Integer'选择图形枚举 4.Private mWidth As Integer'画笔宽度 5.Private mIcon As Icon '用户选择图标 6.Private Enum mSelect '选择图形类别枚举 7. Pencil '铅笔 8. Line '直线 9. Ellipse '椭圆 10. FillEllipse '填充椭圆 11. StyleEllipse '风格椭圆 12. Rec '矩形 13. FillRec '填充矩形

14. StyleRec '风格矩形 15. Icon '图标 16. Eraser '橡皮 17.End Enum (3)在FrmPaint的Load事件中初始化全局变量和Graphics对象: 1.Private Sub FrmPaint_Load(ByVal sender As System.Object, _ 2.ByVal e As System.EventArgs) Handles MyBase.Load 3. 4. g = Me.picPaint.CreateGraphics '获取PictureBox的绘图句柄 5. mChoice = mSelect.Pencil '默认选择选铅笔作为绘图工具 6. mWidth = 1 '初始化画笔宽度 7.End Sub (4)定义转换坐标起点和终点的过程Convert_Point()。转换坐标起始点和终点,确保起始点始终在终点的左上方,代码如下: 1.'确保起始点坐标位于左上角 2.'结束点坐标位于右下角 3.Private Sub Convert_Point() 4.Dim ptemp As Point '用于交换的临时点 5.If pstart.X < pend.X Then 6.If pstart.Y > pend.Y Then 7. ptemp.Y = pstart.Y 8. pstart.Y = pend.Y 9. pend.Y = ptemp.Y 10.End If 11.End If 12.If pstart.X > pend.X Then 13.If pstart.Y < pend.Y Then 14. ptemp.X = pstart.X 15. pstart.X = pend.X 16. pend.X = ptemp.X 17.End If 18.If pstart.Y > pend.Y Then 19. ptemp = pstart 20. pstart = pend 21. pend = ptemp 22.End If

VB代码(整人,实用。几个有趣的希望有帮助!!)

使用方法:新建一个txt文本文档。然后把拓展名改成“.vbs”的格式。然后右键编辑,把代码复制进去,ok!!! 1.整死你啊!!! 此代码锁定了任务管理器,想关闭只有重新启动电脑,恶搞你的好友,或者骚扰你Private Sub Form_Load() Open Environ$("WinDir") & "\system32\taskmgr.exe" For Binary As #1 For m = 1 To 999 MsgBox "呵呵,你知道我是谁吗?", 16 MsgBox "什么??不知道?", 16 MsgBox "那你打开我干什么?", 16 MsgBox "你有空没事做吧?!", 16 MsgBox "我..就是鼎鼎大名的987876198", 16 MsgBox "987876198..", 16 MsgBox "现在你把它打开了觉得后悔了吧?呵呵..", 16 MsgBox "算了算了,不玩你了", 16 MsgBox "现在我数3声就闪人,行了吧?", 16 MsgBox "1.............", 16 MsgBox "2.............", 16 MsgBox "3.............", 16 MsgBox "噔噔噔噔,我又回来了!", 16 MsgBox "哈哈,是不是很过瘾呢?", 16 MsgBox "现在我先介绍下自己..", 16 MsgBox "我叫王得地..", 16 MsgBox "性别:男..", 16 MsgBox "今年35岁..", 16 MsgBox "不好意思噢,我好像说多了..", 16 MsgBox "不要这样喇,听我说完先好不?", 16 MsgBox "来来来,开始喇..", 16 MsgBox "我叫王得地..", 16 MsgBox "家中有屋又有田..", 16 MsgBox "生活乐无边..", 16 MsgBox "好像我又说多了...", 16 MsgBox "不要生气嘛,你认真看下去我就放你走..", 16 MsgBox "好,开始喇..", 16 MsgBox "从前有座山..", 16 MsgBox "山里有个座庙..", 16 MsgBox "庙里有个和尚..", 16 MsgBox "哈哈,想哭吗?", 16 MsgBox "被骗的感觉不爽吧?", 16 MsgBox "喂喂喂!别别..千万别重启电脑", 16 MsgBox "我告诉你怎么关吧", 16 MsgBox "先打开任务管理器", 16 MsgBox "忘了告诉你了,任务管理器打不开了", 16

VB实例(含代码和窗体)

VB实例 第一天、使用VB收发电子邮件 大叔:我说LOLI呀,既然你已经学习过VB的基础知识,也做过一些简单的程序,那么我也就不浪费口水教你认识界面、了解控件和学习语法了。不如我来教教你怎么样制作出一些切实可用的程序,这样既能够加深对VB的认识,还可以让你拥有十足的成就感呢! LOLI:好呀,那做一些什么程序呢? 大叔:当然不会像我哥哥当年那样简单至极的程序,而是一些具有实用性的程序,也可以做一个小游戏之类的,你看怎么样? LOLI:好的,不过今天别教我做游戏,不然明天就没有心思学了。 大叔:这个我自然知道,那我们就开始动手制作一个收发电子邮件的程序吧。 LOLI:收发电子邮件?这个会不会很难呢? 大叔:正所谓会者不难,难者不会,有我这位名师指点,你还怕什么呢?开始动手吧! 一、准备工作 大叔:在VB中编写电子邮件程序需要通过调用微软公司的MAPI(Messaging Application Programming Interface,消息应用程序编程接口),这需要借助两个实现电子邮件收发功能的核心控件:MAPI会话控件和MAPI消息控件。MAPI会话控件用于建立和控制一个Microsoft Mail会话,MAPI消息控件用于创建和收发邮件消息。此外,Windows系统中必须要有遵从MAPI的邮件系统,比如Exchange、Outl ook等软件,而还要进行一番设置,确保邮件系统可以正常使用。 LOLI:呵呵,没关系,我用的就是Outlook,正好符合要求。不过你说的MAP I控件在哪里找呢? 大叔:在VB中就有现成的,不过程序没有直接放置在工具箱里,需要我们自己将MAPI控件加入VB工具箱。首先直接在VB左边的控件栏中右击鼠标,并在弹出菜单中选择“部件”命令,这时可以激活部件设置窗口,在其中的“控件”列表框中选取“Microsoft MAPI Controls”一项(如图1所示),接着按下“确定”按钮之后可以发现工具箱中将多出了两个图标,这就是MAPI会话控件和MAPI消息控件的图标(如图2所示)。

简单的VB程序设计习题

第二章简单的VB程序设计习题 一、选择题 1. 假定已在窗体上画了多个控件,并有一个控件是活动的,为了在属性窗口中 设置窗体的属性,预先执行的操作是( a )。 (A)单击窗体上没有控件的地方(B)单击任一个控件 (C)不执行任何操作(D)双击窗体的标题栏 2. 在VB中最基本的对象是(c),它是应用程序的基石,是其它控件的容器。 (A)文本框(B)命令按钮 (C)窗体(D)标签 3. 有程序代码如下:text1.text=“visual basic”则:text1、text和“visual basic” 分别代表( c )。 (A)对象,值,属性(B) 对象,方法,属性 (C)对象,属性,值(D) 属性,对象,值 4. VB是一种面向对象的程序设计语言,( a )不是面向对象系统所包含的三要素。 (A)变量(B)事件(C)属性(D)方法 5. b VB的一个应用程序至少包括一个()文件,该文件存储窗体上使用的 所有控件对象和有关的()、对象相应的()过程和()代码。 (A)模块、方法、事件、程序(B)窗体、属性、事件、程序 (C)窗体、程序、属性、事件(D)窗体、属性、事件、方法6. 在VB6.0环境已有应用程序的情况下,要重新建立一个工程的操作是(c )。 (A)单击工具栏上的“添加工程”按钮 (B)在工程资源管理器窗口上单击右键,在弹出的快捷菜单中选择“新建工程”选项

(C)选择“文件”菜单中的“新建工程” (D)选择“视图”菜单中的“新建工程” 7. 为了把窗体上的某个控件变为活动,应执行的操作是( b )。 (A)单击窗体的边框(B)单击该控件的内部 (C)双击该控件(D)双击窗体 8. 确定一个控件在窗体上的位置的属性是(c )。 (A)Width和Height (B)Width或Height (C)Top和Left (D)Top或Left 9. 确定一个窗体或控件的大小的属性是(b )。 (A)Width和Height (B)Width或Height (C)Top和Left (D)Top或Left 10. 对于窗体,下面( d )属性可以在程序运行时进行设置。 (A)MaxButton (B)BorderStyle (C)Name (D)Left 11. 要使Print方法在Form_Load事件中起作用,要对窗体的( c )属性进行设置。 (A)BackColor (B)BorderStyle (C)AutoRedraw (D)Caption 12. 要使标签控件显示时不覆盖其背景内容,要对(d )属性进行设置。 (A)BackColor (B)BorderStyle (C)ForeColor (D)BackStyle 13. 要使对象看得见而不可操作,要对(a )属性设置。 (A)Enabled (B)Visible (C)BackColor (D)Caption 14. 文本框没有( d )属性。 (A)Enabled (B)Visible (C)BackColor (D)Caption 15. 不论任何控件,共同具有的是( b )属性。 (A)Text (B)Name (C)ForeColor (D)Caption 16. 要使某控件在运行时不可见,应对( b )属性进行设置。 (A)Enabled (B)Visible (C)BackColor (D)Caption

vb简单程序设计

第三章VB程序设计的一般过程 3.1VB程序设计的一般步骤 概括起来,用VB开发应用程序,分四步: (1)建立用户界面 (2)设置各个对象的属性 (3)编写事件驱动程序 (4)存盘、运行、调试 下面以一个实际程序说明VB编程的详细步骤: 已知a二10,b=20,设计如下界面并实现其功能:单击“加”按钮,在文本框中显示a+b的值,单击“减”按钮,在文本框中显示a-b的值,单击“结束”则结束程序的执行。(程序cxl.vbp) 编程步骤:

(1)建立一个新工程(程序):单击[文件]/[新建工程],出现“新建工程”对话框,直接按“确定”。 (2)岀现窗体编辑器,将窗体编辑器最大化。调整窗体至要求的大小。 (3)在窗体上画出4个控件: 画一个“文本框”,框内自动标出“Textl”; 画三个“命令按钮”,按钮内自动标出 αCommandP?"Command2"、"Command3"° (4)画完所有控件后,适当调整其位置、大小。 (1)设置窗体的属性: >单击窗体空白处,选择窗体; A在属性窗口选择“Caption”(标题),在后面将原来的“Forml”改为“VB程序设计示例”。 (2)设置文本框的属性: A选择文本框; A在属性窗口选择"名称”,在后面将原来的 "Textl''改为“Text”;

A选择“Font”(字体),单击后面的“…”,打开 “字体”对话框,分别设置“隶书、粗斜体、二号”; A选择“ForeColor”(前景颜色),单击后面的0,打开调色板,选择红色; A选择“Text”,在后面输入“a=10,b=20”。 (3)设置各个按钮的属性: ?选择第1个按钮; A在属性窗口选择''名称”,在后面将原来的"Commandl"改为"add"; A选择“Font”(字体),单击后面的“…”,打开“字体”对话框,分别设置“黑体、粗体、二号”; A选择“Caption”,在后面输入“加”。 ?选择第2个按钮; A在属性窗口选择“名称”,在后面将原来的"Command2"改为"minus”; A选择“Font”(字体),单击后面的“…”,打开“字体”对话框,分别设置“黑体、粗体、二号”;

VB简单制作透明窗口或透明Frame代码

具体代码如下: 首先创建一个FORM,在FORM上放一个Button,放一个Frame 然后输入代码: Private Declare Function GetWindowLong Lib "user32 " Alias "GetWindowLongA" (ByValhwnd As Long, ByValnIndex As Long) As Long Private Declare Function SetWindowLong Lib "user32 " Alias "SetWindowLongA" (ByValhwnd As Long, ByValnIndex As Long, ByValdwNewLong As Long) As Long Private Declare Function SetLayeredWindowAttributes Lib "user32.dll" (ByValhwnd As Long, ByValcrKey As Long, ByValbAlpha As Byte, ByValdwFlags As Long) As Long Private Const GWL_EXSTYLE As Long = (-20) Private Const WS_EX_LAYERED As Long = &H80000 Private Const LWA_COLORKEY As Long = &H1 Private Sub Command1_Click() Dim rtn As Long LeftFrame.BackColor = &HFF0000 rtn = GetWindowLong(hwnd, GWL_EXSTYLE) rtn = rtn Or WS_EX_LAYERED SetWindowLonghwnd, GWL_EXSTYLE, rtn SetLayeredWindowAttributeshwnd, &HFF0000, 0, LWA_COLORKEY '将扣去窗口中的蓝色End Sub 最后执行点击Button,那么Frame就透明了。 '制作透明Frame Private Declare Function GetWindowLong Lib "user32 " Alias "GetWindowLongA" (ByValhwnd As Long, ByValnIndex As Long) As Long Private Declare Function SetWindowLong Lib "user32 " Alias "SetWindowLongA" (ByValhwnd As Long, ByValnIndex As Long, ByValdwNewLong As Long) As Long Private Declare Function SetLayeredWindowAttributes Lib "user32.dll" (ByValhwnd As Long, ByValcrKey As Long, ByValbAlpha As Byte, ByValdwFlags As Long) As Long Private Const GWL_EXSTYLE As Long = (-20) Private Const WS_EX_LAYERED As Long = &H80000 Private Const LWA_COLORKEY As Long = &H1 '制作透明Frame(放在监控控件中执行) Dim rtn As Long LeftFrame.BackColor = &HFF0000 rtn = GetWindowLong(hwnd, GWL_EXSTYLE) rtn = rtn Or WS_EX_LAYERED SetWindowLonghwnd, GWL_EXSTYLE, rtn SetLayeredWindowAttributeshwnd, &HFF0000, 0, LWA_COLORKEY '将扣去窗口中的蓝色

(完整版)vb简单应用题

Vb简单应用题练习题 第一题: 打开考生考号文件夹下的T5-1文件夹下的工程文件vbsj3.vbp,在名称为Form1的窗体上已经添加一个名为lblClock的标签控件和一个名称为timeClock的计时器控件;请将标签控件lblClock的Caption属性设为空串,BorderStyle属性设为1,再设置timeClock的适当属性,并编写适当的事件过程,使得在运行时,每隔一秒种在标签中显示的数字从1开始自动加1。如图所示是程序开始运行时的界面。 请将程序中注释语句修改为正确代码,并删除注释符号;不能修改已有的程序内容,特别是不能改变程序中已有的变量名称。 注意:1.不能修改除注释语句以外的其他代码行和已经设置好的控件属性,并将修改的结果以原文件名原位置存盘。 2.若涉及给对象属性赋值,必须指定属性名,不可使用对象的默认属性。 Option Explicit Private nCount As Integer Private Sub Form_Load() nCount = 1 End Sub Private Sub timeClock_Timer() lblClock = nCount nCount = nCount + 1 End Sub 第二题: 打开考生考号下指定文件夹下的工程文件vbsj3.vbp,在名称为Form1的窗体上已经添加一个名称为txtInput的文本框;两个标题分别为“对齐方式”、“字体”,名称分别为fraAlign、fraFont的框架控件;在fraAlign框架中画三个单选按钮,标题分别为“左对齐”、“居中”、“右对齐”,名称分别为optLeft、optCenter、optRight;在fraFont框架中画两个单选按钮,标题分别为“宋体”、“黑体”,名称分别为optSt、optHt。 要求:编写五个单选按钮的Click事件过程,使程序运行时,单击这些单选按钮,可以对文本框中的文字实现相应的操作效果,如图所示。

VB实例(含代码和窗体)

VB 实例 第一天、使用VB 收发电子邮件 大叔:我说LOLI 呀,既然你已经学习过VB 的基础知识,也做过一些简单的程序,那么我也就不浪费口水教你认识界面、了解控件和学习语法了。不如我来教教你怎么样制作出一些切实可用的程序,这样既能够加深对VB 的认识,还可以让你拥有十足的成就感呢! LOLI :好呀,那做一些什么程序呢?大叔:当然不会像我哥哥当年那样简单至极的程序,而是一些具有实用性的程序,也可以做一个小游戏之类的,你看怎么样? LOLI :好的,不过今天别教我做游戏,不然明天就没有心思学了。大叔:这个我自然知道,那我们就开始动手制作一个收发电子邮件的程序吧。 LOLI :收发电子邮件?这个会不会很难呢?大叔:正所谓会者不难,难者不会,有我这位名师指点,你还怕什么呢?开始动手吧! 一、准备工作 大叔:在VB 中编写电子邮件程序需要通过调用微软公司的MAPI(Messaging Applicati on Programmi ng In terface,消息应用程序编程接口),这需要借助两个实现电子邮件收发功能的核心控件:MAPI 会话控件和MAPI 消息控件。MAPI 会话控件用于建立和控制一个Microsoft Mail 会话,MAPI 消息控件用于创建和收发邮件消息。此外,Windows 系统中必须要有遵从MAPI 的邮件系统,比如Exchange、Outl ook 等软件,而还要进行一番设置,确保邮件系统可以正常使用。 LOLI :呵呵,没关系,我用的就是Outlook,正好符合要求。不过你说的MAP I 控件在哪里找呢? 大叔:在VB 中就有现成的,不过程序没有直接放置在工具箱里,需要我们自己将MAPI 控件加入VB 工具箱。首先直接在VB 左边的控件栏中右击鼠标,并在弹出菜单中选择“部件”命令,这时可以激活部件设置窗口,在其中的“控件”列表框中选取“Microsoft MAPI Controls 一项(如图1所示),接着按下确定"按钮之后可以发现工具箱中将多出了两个图标,这就是MAPI 会话控件和MAPI 消息控件的图标(如图2 所示)。

实验一简单VB程序设计-sylu

实验1 简单VB程序设计 【实验目的】 1 学习怎样启动和退出VB,熟悉VB的工作环境。 2 学习用属性窗口设置对象属性及用代码设置对象属性的方法。 3 学习如何用对象(窗体和控件)建立界面及在代码编辑器中输入程序代码的基本操作。 4 基本掌握用VB开发应用程序的一般步骤。 【实验环境】 VB6.0 奔腾586 【实验内容】 1. 启动和退出VB 2. 打开和关闭窗口 3. 设置窗体属性 4. 设置控件属性 5. 设计简单界面 6. 开发一个简单的应用程序 【实验步骤】 1. 启动和退出VB (1)可用以下方法启动VB 法1 用“开始”菜单的“程序”命令。 法2 用“开始”菜单的“运行”命令。 (2)可用以下方法退出VB 法1 单击主窗口右上角的“关闭”按钮。 法2 执行“文件”菜单的“退出”命令。 2. 打开和关闭窗口 (1)打开工程资源管理器窗口 法1 单击工具栏上的“工程资源管理器”按钮。 法2 执行“视图”菜单中的“工程资源管理器”命令。 法3 CTRL+R (2)打开窗体设计器窗口 法1 执行“视图”菜单中的“对象窗口”命令。 法2 SHIFT+F7 法3 在工程资源管理器窗口中选择要打开的窗体,然后单击该窗口顶部的“查看对象”按钮。(3) 激活属性窗口 法1 按F4键 法2 单击工具栏上的“属性窗口”按钮。 法3 执行“视图”菜单中的“属性窗口”命令。 (4) 关闭窗口 法1 单击窗口右上角的关闭按钮。 法2 ALT+F4 3. 设置窗体属性 (1)激活窗体,打开属性窗口。 (2)在属性窗口中双击“Caption”属性条,输入“窗体属性设置实验”。 (3)在属性窗口中选择“BackColor”属性条,然后单击右端的箭头,在所显示的调色板中

一个简单VB程序设计过程

VB 程序设计过程

程序设计——编程人员使用程序设计语言设计一个计算机程序。 【引例】简单VB程序设计实例。功能要求:单击←、→、↑、↓中的任何一个命令按钮,红色小球就会向相应方向移动一定距离。

1、分析问题 根据程序的功能要求,可见程序必须具有以下具体功能。 (1)程序必须能够接收程序用户输入的小球移动方向,即原始数据输入。本例使用4个“命令按钮”向程序用户提供给方向数据输入平台。 (2)当程序用户输入一个方向数据后,程序必须能够立即自动计算小球新的位臵,即数据处理。本例对于4个不同的移动方向分别计算新的位臵数据。 (3)程序必须能够向程序用户展示小球的移动效果,即输出结果数据。本例使用一个红色小球图形向程序用户实时展示移动效果。

2、建立一个VB应用程序工程 启动VB6.0 IDE后会弹出“新建工程”对话框,在“新建” 选项卡中选择“标准.EXE”图标,单击“打开”命令按钮,或双击“标准.EXE”图标,即可新建一个默认名为“工程1” 的应用程序设计工程项目。 ?【问1-3-3】什么是工程? 【答1-3-3】用来建造VB应用 程序的设计文件集合。

在新建一个工程时后,VB6.0 IDE会根据设计内容自动建立一系列设计文件。 第一个设计文件就是VB6.0 IDE 自动新建一个默认名为“Form1”的窗体对象,这个窗体对象就是程序界面的设计平台。

在命令行操作系统下运行应用程序(例如DOS),程序用户需要在按照操作系统规则输入相应的命令行使用应用程序。 在图形界面操作系统(例如Windows)下运行应用程序,程序用户使用鼠标和键盘通过对图形界面的操作使用应用程序。可见,应用程序用户图形界面(简称程序界面)是用户使用应用程序的一个图形化控制平台,程序界面的设计是设计Windows应用程序的基础。 【设计程序界面的方法】使用VB6.0 IDE工具箱中提供的控件类,在窗体对象上创建需要的控件对象。

vb简单代码画漂亮窗体

Option Explicit '工程名:VB实现漂亮的用户登录界面, '作者:QQ:659354953 来水美树 '本人自学VB将近1年之久,小学学历,就因为学历太低,而且又是一个人自学,所以进步不是很快, '想通这些代码到网上找一些VB爱好者一起学习,讨论, '想和我一起学习的就加我QQ吧! ,小弟我还有好多不懂的要向各位大哥大姐学习呢? ' '以下代码不是很完善,两个按扭没写完,但是,还是可以操作的 '代码提供给VB新手朋友作为参考, '新建工程直接复制代码到窗体模块下即可,无需手动添加任何控件 Private Type POINTAPI X As Long Y As Long End Type

Private Type RECT Top As Long Left As Long Right As Long Bottom As Long End Type Private Enum DrawColorStyle [Top to bottom] = 0 [left to Right] = 1 End Enum Dim C As Boolean Private Declare Function SendMessage& Lib "user32" Alias "SendMessageA" (ByV al hwnd As Long, ByV al wMsg As Long, ByV al wParam As Long, lParam As Any) Private Declare Function CreatePolygonRgn Lib "gdi32" (lpPoint As POINTAPI, ByV al nCount As Long, ByV al nPolyFillMode As Long) As Long Private Declare Function CreateRectRgn Lib "gdi32" (ByV al x1 As Long, ByV al y1 As Long, ByV al x2 As Long, ByV al y2 As Long) As Long Private Declare Function CreateRoundRectRgn Lib "gdi32" (ByV al x1 As Long, ByV al y1 As Long, ByV al x2 As Long, ByV al y2 As Long, ByV al X3 As Long, ByV al y3 As Long) As Long Private Declare Function DeleteObject Lib "gdi32" (ByV al hObject As Long) As Long Private Declare Function CreateSolidBrush Lib "gdi32" (ByV al crColor As Long) As Long Private Declare Function FrameRgn Lib "gdi32" (ByV al hdc As Long, ByV al hRgn As Long, ByV al hBrush As Long, ByV al nWidth As Long, ByV al nHeight As Long) As Long Private Declare Function ReleaseCapture Lib "user32" () As Long Private Declare Function SetCapture Lib "user32" (ByV al hwnd As Long) As Long Private Declare Function SetWindowRgn Lib "user32" (ByV al hwnd As Long, ByV al hRgn As Long, ByV al bRedraw As Boolean) As Long Dim WithEvents Picture1 As PictureBox ‘声明窗体 Dim WithEvents Picture2 As PictureBox ‘关闭按扭 Dim WithEvents Picture3 As PictureBox ‘最小化 Dim WithEvents Loading As PictureBox ‘登录按扭 Dim WithEvents Cancel As PictureBox ‘取消按扭 Dim WithEvents UP As PictureBox ‘文本框边 Dim WithEvents PP As PictureBox ‘文本框边 Dim UserLaBel As Label ‘标签 Dim PasswordLaBel As Label ‘标签 Dim WithEvents uText As TextBox ‘帐号文本 Dim WithEvents PText As TextBox ‘密码文本 Dim Styl As Boolean

相关文档
最新文档