Jump to content

UniTabControl не раскрывается на весь фрейм


x11

Recommended Posts

  • x11 changed the title to UniTabControl не раскрывается на весь фрейм
  • 3 weeks later...
  • 1 month later...
  • 4 months later...
  • 5 months later...
1 minute ago, x11 said:

Вы часто пишите, что проанализируете, но в итоге....

Простите, не всегда получается своевременно проанализировать...

Link to comment
Share on other sites

1 hour ago, x11 said:

uniGUI_FrameAlign.zip 28.24 kB · 0 downloads

procedure TUniFrame1.UniFrameCreate(Sender: TObject);
begin
  UniTabControl1.JSInterface.JSAddListener('resize', 'function(me){me.tabPanel.setWidth(me.getWidth())}')
end;

 

  • Thanks 1
Link to comment
Share on other sites

Спасибо.

Завтра проверю.

Хотелось бы, чтобы вы все это исправляли в исходниках, чтобы фреймворк работал без костылей.

Link to comment
Share on other sites

13 hours ago, Sherzod said:
UniTabControl1.JSInterface.JSAddListener('resize', 'function(me){me.tabPanel.setWidth(me.getWidth())}')

 

К сожалению это еще не все.

Внутри есть сетка uniDBGrid, в свойствах LayoutConfig.Flex указано 1, но сетка не на весь экран.

Подскажите, как растянуть сетку на весь экран внутри UniTabControl`а?

Screenshot_9.jpg

Screenshot_10.jpg

Link to comment
Share on other sites

  • 2 years later...

up

как растянуть сетку dbUniDBGrid на весь родительский контейнер?

К сожалению, у компонентьі dbUniDBGrid отсутствует свойство LayoutAttribs. Кстати, у компоненті TUniTabControl тоже отсутствует свойство LayoutAttribs.

Link to comment
Share on other sites

5 hours ago, x11 said:

Кстати, у компоненті TUniTabControl тоже отсутствует свойство LayoutAttribs.

Попробуйте это обходное решение:

UniTabControl.ClientEvent.UniEvents ->

function afterCreate(sender)
{
    sender.fixWidth = function() {
        var tabPanel = sender.tabPanel;
        tabPanel.setStyle('width', '100%');
        tabPanel.tabBar.setStyle('width', '100%');
    };
    
    sender.on('resize', sender.fixWidth);
    sender.on('afterlayout', function(){
        sender.tabPanel.on('tabchange', sender.fixWidth);
        sender.fixWidth();
    });
}

 

Link to comment
Share on other sites

On 1/25/2022 at 8:03 PM, Sherzod said:
procedure TUniFrame1.UniFrameCreate(Sender: TObject);
begin
  UniTabControl1.JSInterface.JSAddListener('resize', 'function(me){me.tabPanel.setWidth(me.getWidth())}')
end;

Обходное решение, вьі уже здесь давали, оно работает.

Я про то, что бьіло бьі неплохо добавить свайства Layout и LayoutAttribs,

т.е. как у других компонент

 

image.png.2bef4a0977fedf928e76688ed5fbf185.png

  • Upvote 1
Link to comment
Share on other sites

Сейчас меня больше заботит как растянуть правильно компоненту TUniDBGrid, которая лежит, например, внутри контейнера TUniTabControl.

Link to comment
Share on other sites

11 minutes ago, x11 said:

Сейчас меня больше заботит как растянуть правильно компоненту TUniDBGrid, которая лежит, например, внутри контейнера TUniTabControl.

Я проанализирую.

Link to comment
Share on other sites

1 minute ago, x11 said:

Я имел ввиду, что пробуйте в нем реализовать "растягивание" uniDBGrid.

Кажется не прикрепили тестовый проект целиком.

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...