delphi中如何让pagecontrol的tab宽度自适应

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi中如何让pagecontrol的tab宽度自适应相关的知识,希望对你有一定的参考价值。

你是指pagecontrol的大小随窗体大小而自动变化么?这个只需要设定pagecontrol的Align属性就可以啦,Tabsheet是随pagecontrol自动调整大小的。不知道你要的是不是这个答案。 参考技术A 默认就是宽度自适应的,不知你的为何不是? 参考技术B 你指的是什么宽度呢

Delphi中拖动的方式来移动TPageControl的Tab

procedure TMainForm.PageControl1MouseDown(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer) ;
begin
  PageControl1.BeginDrag(False) ;
end;

procedure TMainForm.PageControl1DragDrop(Sender, Source: TObject; X,
  Y: Integer) ;
const
  TCM_GETITEMRECT = $130A;
var
  TabRect: TRect;
  j: Integer;
begin
  if (Sender is TPageControl) then
  for j := 0 to PageControl1.PageCount - 1 do
  begin
    PageControl1.Perform(TCM_GETITEMRECT, j, LParam(@TabRect)) ;
    if PtInRect(TabRect, Point(X, Y)) then
    begin
      if PageControl1.ActivePage.PageIndex <> j then
        PageControl1.ActivePage.PageIndex := j;
      Exit;
    end;
  end;
end;

procedure TMainForm.PageControl1DragOver(Sender, Source: TObject; X,
  Y: Integer; State: TDragState; var Accept: Boolean) ;
begin
  if (Sender is TPageControl) then Accept := True;
end;

以上是关于delphi中如何让pagecontrol的tab宽度自适应的主要内容,如果未能解决你的问题,请参考以下文章

delphi的菜单问题

如何减少 Delphi 中的 PageControl 闪烁?

在delphi中,在运行时如何让拖动的控件显示在最上方?

delphi怎么样选择PageControl1的分页

delphi中的pagecontrol用法,怎样点击一个page后激发

delphi PageControl这个控件怎么使用,我要做出2个Page,怎么