900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > html中label文本垂直居中 如何在VB中实现label中的文字垂直方向居中?

html中label文本垂直居中 如何在VB中实现label中的文字垂直方向居中?

时间:2019-01-25 21:41:59

相关推荐

html中label文本垂直居中 如何在VB中实现label中的文字垂直方向居中?

在Vb中如text和label控件是没有垂直居中功能的。

但是可以变通就是给文字加空行。

下面的是从百度贴吧上面引用来的:

但是他并没有说明要将text的mutiline属性设置为true,否则是不行的。

'加一个Text1一个Command1

DimaaAsString,iAsInteger,jjAsInteger,maxlineAsInteger,LineCntAsLong

PrivateDeclareFunctionSendMessageLib"user32"Alias"SendMessageA"(ByValhwndAsLong,ByValwMsgAsLong,ByValwParamAsLong,lParamAsAny)AsLong

ConstEM_GETLINECOUNT=&HBA

PrivateSubForm_Load()

'窗体与Command1居中

Me.Move(Screen.Width-Me.Width)\2,(Screen.Height-Me.Height)\2

Command1.Move(Me.Width-Command1.Width)\2,Text1.Height+Text1.Top+200

Command1.Caption="居中显示"

Text1.Alignment=2'TextBox水平居中显示

aa="Attn:楼主"

aa=aa&Chr(13)&Chr(10)

aa=aa&"呵呵你的问题都好奇怪,但也让我学了不少!"

aa=aa&Chr(13)&Chr(10)

aa=aa&"我也想不出其它的好方法"

aa=aa&Chr(13)&Chr(10)

aa=aa&"你认为这样行吗?"

Text1.Text=aa

EndSub

PrivateSubCommand1_Click()

LineCnt=TextBoxLineCnt(Text1)

'每增加一行加上180,当然是以默认的字体大小而言

maxline=Text1.Height\180'计算textbox能装下几行

jj=(maxline-LineCnt)\2'垂直居中,(textbox总行数-Text1的总行数)整除2

Fori=1Tojj'装上几行空白

Text1.Text=Chr(13)&Chr(10)&Text1.Text

Nexti

MsgBox"总共有"&CStr(LineCnt)&"行文字,看看垂直居中了吗?"

EndSub

PublicFunctionTextBoxLineCnt(ctlAsTextBox)AsLong'计算总行数的函数

TextBoxLineCnt=SendMessage(ctl.hwnd,EM_GETLINECOUNT,0,0)

EndFunction

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。