如何设置QRDBText中数据上下居中(21分)

  • 主题发起人 主题发起人 mybabyben
  • 开始时间 开始时间
M

mybabyben

Unregistered / Unconfirmed
GUEST, unregistred user!
经过测试,QRDBText属性中:Alignment=taCenter,AutoSixe=False 则QRDBText中的内容只会左右居中,但不会上下居中.请教,QRDBText控件如何设置里面的内容上下居中即方框内中的内容垂直居中?
 
唉,每次还是自己研究答案出来,虽然花了好大心思,不过自己能研究出来比什么都好,还是贴上来供大家分享了
从网上查到这么一段话,受其开导,改造成自己所需要实现的功能
*****************************
有一方法可以实现你的要求:
在你的dataset的AfterScroll中写
if trim(dataset.FieldByName('mobile2').AsString)=''
then

QRDBText1.Top:=30
else

QRDBText1.Top:=16;
当然,30和16只是我给的例子.你可按你的要求调正
*****************************
改造如下
procedure TfrmRepSalOrderMD2.qrMainAfterScroll(DataSet: TDataSet);
begin
//qrdbtext中数据进行截位垂直居中 begin
if Length(trim(qrMain.FieldByName('cust_address').AsString))>50 then
begin
QRDBText1.Top:=33;
QRDBText1.Height:=40;
end;
if Length(trim(qrMain.FieldByName('cust_phone').AsString))>20 then
begin
QRDBText2.Top:=78;
QRDBText2.Height:=28;
end;
if Length(trim(qrMain.FieldByName('recv_address').AsString))>50 then
else
begin
QRDBText7.Top:=140;
QRDBText7.Height:=30;
end;

if Length(trim(qrMain.FieldByName('cust_recv_phone').AsString))>20 then
begin
QRDBText15.Top:=171;
QRDBText15.Height:=29;
end;
end;
 
后退
顶部