⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 zx_label.htm

📁 对于学习很有帮助
💻 HTM
字号:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>制作Delphi的竖排标签</title>
</head>

<body bgcolor="#FFFFFF" text="#000000">

<p align="center"><big><big>制作Delphi的竖排标签<br>
作者:赖立谦</big></big></p>

<p><br>
  大家知道用Deiphi开发应用程序时标签是必不可少的,但是Deiphi<br>
提供的Label构件只支持横排方式的标签,而不支持竖排方式标签。<br>
<br>
  怎么办?<br>
<br>
  编写一段简单的函数就可以把标签从横排变成竖排。因为中文字<br>
符集是用两个字节表示一个字符的,所以应在字符串的每两个字节之<br>
间加入回车换行符。这个函数的参数是一字符串,返回值是在中文字<br>
符之间添加了回车换行符的一个新的字符串。<br>
<br>
  下面就举例说明:我们以竖排方式显示一首诗。<br>
<br>
  新建一工程。<br>
<br>
  首先在implementation部分定义一个字符串数组常量poemary,<br>
该数组的每一个成员顺序存放了诗中的一句。<br>
<br>
  const<br>
<br>
  poemary: array[0..6] of string = ('游子吟', '慈母手中线',<br>
<br>
  '游子身上衣', '临行密密缝', '意恐迟迟归', '谁言寸草心',<br>
<br>
'报得叁春晖');<br>
<br>
  随后,在implementation部分加入字符串转换函数,代码如下:<br>
<br>
  function convertstring(source:string):string;<br>
<br>
  var<br>
<br>
  i,j:integer;<br>
<br>
  a,b:array[0..50] of char;<br>
<br>
  begin<br>
<br>
  StrPCopy(a, source) ;<br>
<br>
  j:=0; i:=0;<br>
<br>
  while (a[j] &lt;&gt;#0) do begin<br>
<br>
  b[i]:=a[j];<br>
<br>
  if (j mod 2=1)and(j&gt;0) then begin<br>
<br>
  Inc(i); b[i]:=#13;<br>
<br>
  end;<br>
<br>
  Inc(j); Inc(i);<br>
<br>
  end;<br>
<br>
  b[i-1]:=#0;<br>
<br>
  result:= strpas(b);<br>
<br>
  end;<br>
<br>
<br>
  最后添加Form1的OnCreate事件。注意:要在uses子句中添加单<br>
元名称stdctrls。<br>
<br>
  procedure TForm1.FormCreate(Sender: TObject);<br>
<br>
  var<br>
<br>
  labary:array[0..6] of Tlabel;<br>
<br>
  i:integer;<br>
<br>
  begin<br>
<br>
  for i:=0 to 6 do<br>
<br>
  begin<br>
<br>
  labary[i]:=Tlabel.Create(self);<br>
<br>
  labary[i].parent:=self;<br>
<br>
  labary[i].caption:=convertstring(poemary[i]);<br>
<br>
  labary[i].top:=(form1.Height-labary[i].height) div 2;<br>
<br>
  labary[i].left:=10+i*33;<br>
<br>
  end;<br>
<br>
  end;<br>
<br>
  运行结果如图所示,此程序在Windows 95,Delphi3.0环境中运<br>
行通过。  </p>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -