vb用*号 打印输出图形

vb用*号 打印输出图形,第1张

用什么控键输出?textbox, label还是messagebox 下面的程序用msgbox输出,另外三角形怎么才四行数据,是不是应该是这样:

Private Sub CommandButton1_Click()

Dim intRowNumber As Integer

Dim i As Integer

Dim j As Integer

Dim strOutput As String

intRowNumber = 5

'画菱形部分

For i = 1 To intRowNumber

If i < intRowNumber / 2 Then

For j = 1 To intRowNumber - i - 2

strOutput = strOutput + " " 'msgbox里一个星号的宽度是两个空格宽度,所以这里加两个空格,如果用别的方法输出看情况修改

Next j

For j = 1 To i 2

strOutput = strOutput + ""

Next j

Else

For j = 1 To i - 3

strOutput = strOutput + " " 'msgbox里一个星号的宽度是两个空格宽度,所以这里加两个空格

Next j

For j = 1 To (intRowNumber - i + 1) 2

strOutput = strOutput + ""

Next j

End If

strOutput = strOutput + vbCrLf

Next i

strOutput = strOutput + vbCrLf

strOutput = strOutput + vbCrLf

'画三角形部分,题目有问题吧-_-,1 2 2 6才四排,而且怎么看也不是个像样的三角形

For i = 1 To intRowNumber

For j = 1 To intRowNumber - i

strOutput = strOutput + " "

Next j

For j = 1 To i

strOutput = strOutput + " "

Next j

strOutput = strOutput + vbCrLf

Next i

MsgBox strOutput

End Sub

VB提供了多个网格控件,如DBGrid,FlexGrid等,在程序中可以用来显示、录入数据,而且可以直接显示数据库里的数据,但是这些网格控件没有提供打印功能,用这些网格控件只能在屏幕上显示表格数据,这是网格控件功能上的一个缺憾。

如何才能把网格控件显示的表格数据从屏幕上搬到打印机上呢使用VB

60提供的报表生成器,就能实现数据报表的生成和打印。本文将介绍打印数据报表的几个技巧。

数据报表设计器

Microsoft数据报表设计器(Microsoft

Data

Report

designer)是一个多功能的报表生成器,其特色是创建联合分层结构报表。同数据源(Data

Environment

designer数据环境设计器)一起使用,可以从几个不同的相关表创建报表。除创建可打印报表之外,还可以将报表导出到

HTML

或文本格式文件中。

采用如下方法调用数据报表设计器,单击[工程]→[添加

Data

Report],向工程中添加一个数据报表设计器,在一个工程中可以添加多个数据报表设计器,用于设计多个报表。如果“添加

Data

Report”没有在“工程”菜单上列出,则单击[部件],出现“部件”对话框,单击“设计器”选项卡。并单击[Data

Report]把设计器添加到菜单上。

在“工程”菜单上只列出四种ActiveX设计器,其余的设计器放在“工程”菜单的“更多

ActiveX

设计器”子菜单中。

有关上述控件的使用方法请参阅VB的联机帮助。

实现数据报表打印

我们摸索出了几个VB的联机帮助中没有介绍的技巧,但是在编程中非常实用,供大家参考。

(一)数据源动态选择数据库文件

我们为数据环境设计器(Data

Environment

designer)的“Connection1”设置相关数据库时,把数据源定在了一个数据库文件上,这样就不能实现一个数据报表设计器动态选择相关数据库。以下代码的加入将实现数据源的动态选择。实现过程如下:

进入DataEnvironment1的代码窗口。在DataEnvironment1的Initialize()事件中加入代码:

Private

Sub

DataEnvironment_Initialize()

′建立数据源

Dim

sjklj

As

String

sjklj

=

AppPath

+

〃\〃

+〃

Bibliomdb〃

′变量sjklj将存放数据库文件“Bibliomdb”

的路径

sjklj=〃Provider=MicrosoftJetOLE

DB351;

-

Persist

Security

Info=False;Data

Source=〃+sjklj

′设置相关数据源

DataEnvironment1Connection1ConnectionString

=sjklj

End

Sub

这样我们就可以使用代码在程序中随时为数据环境设置数据源了。

(二)如何卸载数据源

使用上述方法设置数据库,如果再修改为另一个数据库,程序依然调用第一次设置的数据库,这是为什么呢

关于这个问题的解决方法在VB的联机帮助中没有介绍。经过细心研究我们考虑出了一种解决方法:我们需要先将原来的数据源卸载,再使数据环境设计器与修改后的数据库相关。对于卸载一个控件,VB提供了Unload方法,对于数据环境设计器这种方法同样适用。我们只需在实现显示数据报表的事件过程中的Show语句前加入:Unload

DataEnvironment1即可。

(三)实现对报表打印边距的编辑

数据报表设计器提供给编程者编辑打印报表边距的功能。DataReport有两个属性:

1LeftMargin属性:编辑打印报表的左边距;

2TopMargin属性:编辑打印报表的上边距。

同样在Show语句前加入以下代码便可实现对报表的左边距和上边距进行编辑了:

lm

=

InputBox(〃请输入打印左边距(mm)〃,

〃打印

-左边距〃,

〃25〃)

tm

=

InputBox(〃请输入打印上边距(mm)〃,

〃打印

-上边距〃,

〃25〃)

DataReport1LeftMargin

=

lm

567

DataReport1TopMargin

=

tm

567

运行程序,单击[打印]按钮时,窗口上将出现一消息框,提示你输入边距数值,单位是毫米,如果用户不输入则程序默认边距为25mm。

Private Sub Form_click()

For i = 100 To 200

x = i Mod 3

If x <> 0 Then Print i

Next i

End Sub

================================

Private Sub Form_click()

n = InputBox("输入1-12")

Select Case n

Case "1"

MsgBox "一月份"

Case "2"

MsgBox "二月份"

Case Else

Print "输入错误"

End Select

End Sub

中间的月份自己写。或者

Private Sub Form_click()

n = InputBox("输入1-12")

If 1 <= n And n <= 12 Then Print Str(n) & "月份"

End If

End Sub

Private Sub Form_click()

s = Val(InputBox("输入上底长度"))

x = Val(InputBox("输入下底长度"))

g = Val(InputBox("输入高"))

mj = (s + x) g / 2

Print mj

End Sub

VB0=1011

1010

VB1=1010

1011

VB0循环右移,把右边四位放

在左边

即得

VB2

=1010

1010

VB0与VB1

VB3=0100

0101

VB0

取反

VB4=1011

1010

VB0或VB2

以上就是关于vb用*号 打印输出图形全部的内容,包括:vb用*号 打印输出图形、VB中的打印问题·····、求梯形面积VB语句 输出100~200之间不能被三整除的数 跪求全是VB语句啊!!!!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/zz/10143177.html

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

发表评论

登录后才能评论

评论列表(0条)

保存