解决方案 »
- 用VB6 GDI+写的BMP转存为JPG的程序:在XP下运行,成功,但在WIN7下却保存为空白图(大小为0),莫非WIN7不支持GDI+?
- 如何得知一个EXE 文件是由哪语言编译
- 用VB如何检测到MS SQL Server 正在运行的实例?
- 求软件的打包工具,微软的是什么??就打VB的程序!谢谢!!
- 注释问题
- ,11,22,33 请问如何去掉第一个逗号?用replace(字符串,",","")去掉的是第二个逗号,为什么?
- 请问如何用WINSOCK发送文字信息,需要转换为二进制流,如果要怎么转换?来者有分!
- VB版的兄弟,你们用的是什么配置的电脑?能装.net吗?
- 数据库连接问题:连接不上access2000数据库,为什么?
- RASDIAL WIN2000
- 这样的VB日历排班系统如何实现
- vb画椭圆
http://download.csdn.net/detail/veron_04/4039695
Option Explicit
'Form1上放一个图片框Picture1,一个命令按钮Command1,一个水平滚动条HScroll1
Private Declare Function CreateFont Lib "gdi32.dll" Alias "CreateFontA" (ByVal H As Long, ByVal W As Long, ByVal E As Long, ByVal O As Long, ByVal W As Long, ByVal I As Long, ByVal U As Long, ByVal S As Long, ByVal C As Long, ByVal OP As Long, ByVal CP As Long, ByVal Q As Long, ByVal PAF As Long, ByVal F As String) As Long
Private Declare Function SelectObject Lib "gdi32.dll" (ByVal hdc As Long, ByVal hObject As Long) As Long
Private Declare Function DeleteObject Lib "gdi32.dll" (ByVal hObject As Long) As Long
Private Const FW_NORMAL As Long = 400
Private Const OEM_CHARSET As Long = 255
Private Const WAngle As Long = 16
Private Const PI As Double = 3.14159265358979Private Sub DrawRotatedText(ByVal FonthDC As Object, ByVal Txt As String, ByVal X As Single, ByVal Y As Single, ByVal Font_Name As String, ByVal Size As Long, ByVal W As Long, E As Long, ByVal I As Boolean, ByVal U As Boolean, ByVal S As Boolean)
Dim CreatFont As Long, OldFont As Long
'Txt--要显示的字符串
'X --显示字符串位置的X坐标
'Y --显示字符串位置的Y坐标
'Font_Name--显示使用的字体
'Size--字体大小
'W--字体粗细
'E--字体旋转的角度
'I--是否斜体
'U--是否加下划线
'S--是否加删除线
'转换ScaleMode属性的度量单位
Size = (Size * -20) / Screen.TwipsPerPixelY
'建立逻辑字体
CreatFont = CreateFont(Size, 0, E, E, W, I, U, S, OEM_CHARSET, 0, WAngle, 0, 0, Font_Name)
'选入设备环境
OldFont = SelectObject(FonthDC.hdc, CreatFont)
'在指定的位置用指定的颜色和建立的字体显示文本
FonthDC.CurrentX = Picture1.Width / 2
FonthDC.CurrentY = Picture1.Height / 2
FonthDC.ForeColor = RGB(0, 0, 255)
FonthDC.Print Txt
'恢复原设备环境
CreatFont = SelectObject(FonthDC.hdc, OldFont)
'删除所建立的字体对象
DeleteObject CreatFont
End SubPrivate Sub Command1_Click()
Unload Me
End SubPrivate Sub Form_Load()
Me.Caption = "文本字符串旋转"
Command1.Caption = "退出"
HScroll1.Max = 360
HScroll1.Min = 0
End SubPrivate Sub HScroll1_Change()
Picture1.Cls
DrawRotatedText Picture1, "Visual basic 6.0", 0, 0, "Times New Roman", 48, FW_NORMAL, PI * HScroll1.Value, True, True, False
End Sub