请问如何控制 VB 打印方向,我想要横向是什么方向打印

 上传我的文档
 上传文档
 下载
 收藏
该文档贡献者很忙,什么也没留下。
 下载此文档
vb6设置打印机纸张类型,以及打印方向
下载积分:1000
内容提示:vb6设置打印机纸张类型,以及打印方向
文档格式:TXT|
浏览次数:2|
上传日期: 11:27:41|
文档星级:
全文阅读已结束,如果下载本文需要使用
 1000 积分
下载此文档
该用户还上传了这些文档
vb6设置打印机纸张类型,以及打印方向
关注微信公众号VB中如何在ListBox的记录宽度大于本身宽度时自动增加横向滚动条?
VB中如何在ListBox的记录宽度大于本身宽度时自动增加横向滚动条?
08-11-24 &
Private Declare Function SendMessage Lib &user32& Alias &SendMessageA& (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Sub Form_Load() For i = 1 To 20 List1.AddItem String(100, &0&) & i Next SendMessage List1.hwnd, &H194, 999, ByVal 0 '999是滚动条的宽度范围,单位为象素 End Sub
=============================================================
更优的代码
'计算出列表框内最长的项目有多少象素的宽度,这样可以使列表框的滚动条调整到一个合适的范围,因为列表框的内容很可能是会变动的,如果生硬的加一个很大的滚动条,同样会使你的程序显得很不专业,所以这一段是更优的代码!
Private Type RECT
Left As Long
Top As Long
Right As Long
Bottom As Long End Type Private Declare Function DrawText Lib &user32& Alias &DrawTextA& (ByVal hdc As Long, ByVal lpStr As String, ByVal nCount As Long, lpRect As RECT, ByVal wFormat As Long) As Long Private Declare Function SendMessage Lib &user32& Alias &SendMessageA& (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long Const LB_SETHORIZONTALEXTENT = &H194 Const DT_CALCRECT = &H400 Public Function ListTextWidth(ByRef lstThis As ListBox) As Long Dim i As Long Dim tR As RECT Dim lW As Long Dim lWidth As Long Dim lHDC As Long With lstThis.Parent.Font
.Size = lstThis.Font.Size
.Bold = lstThis.Font.Bold
.Italic = lstThis.Font.Italic End With lHDC = lstThis.Parent.hdc '便历所有的列表项以找到最长的项 For i = 0 To lstThis.ListCount - 1
DrawText lHDC, lstThis.List(i), -1, tR, DT_CALCRECT
lW = tR.Right - tR.Left + 8
If (lW & lWidth) Then lWidth = lW Next i '返回最长列表项的长度(像素) ListTextWidth = lWidth End Function
'调用代码 Private Sub Command1_Click() '点击Command1会使列表框按当前内容中最长项目的宽度来设置滚动条的范围
'列表框内容有变化时,可以调用这行代码,随时改变滚动条的范围
SendMessage List1.hwnd, LB_SETHORIZONTALEXTENT, ListTextWidth(List1), 0
'写在这里是为了让你看清楚列表框滚动条的变化 End Sub
'测试数据 Private Sub Form_Load() Command1.Caption = &点我& For i = 1 To 100 '添加很长的项目给列表框 List1.AddItem String(i, &0&) Next End Sub
请登录后再发表评论!VB用printform打印本窗体,结果在A4纸上是竖打印,怎样把它变为横打印?_百度知道
VB用printform打印本窗体,结果在A4纸上是竖打印,怎样把它变为横打印?
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
还有一个对象Printer可以设置。一种方案是用A4纸,告诉打印机横向
Printer.PaperSize = vbPRPSA4
Printer.Orientation = vbPROLandscape另一种是直接用自定义纸张:Printer.PaperSize = vbPRPSUser
估计这个会麻烦一点
采纳数:9737
获赞数:18592
你可以在控制面板打印机设置里面设置纸张方向如果要用代码的话,需要知道你VB本版的情况,比如SP你的VB是SP几版本的?SP6还是SP3?
采纳数:37
获赞数:22
擅长:暂未定制
找页面设置,有横版和竖版两种。。
为你推荐:
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。如何在VB6.0里设置打印机横向打印
[问题点数:20分,结帖人CSDN]
本版专家分:0
结帖率 100%
CSDN今日推荐
本版专家分:60245
2009年7月 荣获微软MVP称号2005年7月 荣获微软MVP称号2008年7月 荣获微软MVP称号2007年7月 荣获微软MVP称号2006年7月 荣获微软MVP称号
2005年8月 VB大版内专家分月排行榜第一2005年3月 VB大版内专家分月排行榜第一
2005年7月 VB大版内专家分月排行榜第二
2005年6月 VB大版内专家分月排行榜第三2005年4月 VB大版内专家分月排行榜第三2004年4月 VB大版内专家分月排行榜第三
本版专家分:277
本版专家分:30
匿名用户不能发表回复!
其他相关推荐请教,如何在Pivot Table中将原先默认Data Fields纵向显示用VB代码更改为横向显示。
[问题点数:100分,结帖人ChonglingFan]
本版专家分:4
结帖率 100%
CSDN今日推荐
本版专家分:40632
2010年1月 荣获微软MVP称号2011年1月 荣获微软MVP称号2009年1月 荣获微软MVP称号
2007年7月 VB大版内专家分月排行榜第一2006年5月 VB大版内专家分月排行榜第一
2006年8月 VB大版内专家分月排行榜第二2006年4月 VB大版内专家分月排行榜第二
2008年6月 VB大版内专家分月排行榜第三2006年9月 VB大版内专家分月排行榜第三2006年7月 VB大版内专家分月排行榜第三
本版专家分:4
匿名用户不能发表回复!
其他相关推荐}

我要回帖

更多关于 纸张方向为横向 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信