x11 Posted December 25, 2020 Share Posted December 25, 2020 У панелей, у сетки есть свойство ToolButtons. И по умолчанию кнопки - справа. А можно их сдвинуть влево? В крайнее левое положение? Просто, когда экран большой и форма на всё окно браузера, то неудобно и далеко тянуться вправо к кнопкам. Вообще, хотелось бы, чтобы порядок следования был такой: сперва - подпись (Title), потом - встроенные кнопки ToolButtons, а потом уже и встроенный uniDBNavigator. И в некоторых темах, как например, в "uni_sencha2_mono_triton" нет промежутка между встроенным навигатором и подписью, и это видно на картинке. Если так можно сделать, то подскажите как. Спасибо. P.S. Тема "uni_sencha2_mono_triton" получилась весьма симпатичной и с анимацией, спасибо всем, кто ее делал. Quote Link to comment Share on other sites More sharing options...
x11 Posted December 25, 2020 Author Share Posted December 25, 2020 5 minutes ago, x11 said: Тема "uni_sencha2_mono_triton" получилась весьма симпатичной в некоторых темах с крупными элементами кнопки наезжают друг на друга Quote Link to comment Share on other sites More sharing options...
x11 Posted December 30, 2020 Author Share Posted December 30, 2020 On 12/25/2020 at 1:22 PM, x11 said: в некоторых темах с крупными элементами кнопки наезжают друг на друга В некоторых темах кнопки ToolButton тоже налазят друг на друга, в данном случае - это тема "uni_mac" Quote Link to comment Share on other sites More sharing options...
Sherzod Posted December 30, 2020 Share Posted December 30, 2020 On 12/25/2020 at 4:16 PM, x11 said: нет промежутка между встроенным навигатором и подписью "Подпись" - Вы сами встраиваете? Quote Link to comment Share on other sites More sharing options...
x11 Posted December 30, 2020 Author Share Posted December 30, 2020 нет, это стандартный заголовок панели - свойство Title Quote Link to comment Share on other sites More sharing options...
Sherzod Posted December 30, 2020 Share Posted December 30, 2020 1 hour ago, x11 said: нет, это стандартный заголовок панели - свойство Title JSInterface.JSCall('header.insert', [0, UniGUIControl.JSControl]) Первый параметр это индекс позиции. Quote Link to comment Share on other sites More sharing options...
x11 Posted December 30, 2020 Author Share Posted December 30, 2020 pnl.JSInterface.JSCall(constHeaderInsert, [1, Nav.JSControl]); заголовок остается слева, норм... но хотелось бы, чтобы за заголовком шли навигатор и кнопки, чтобы вот этого (обозначено красным http://prntscr.com/wd7adw ) не было - такое возможно реализовать или нет? Quote Link to comment Share on other sites More sharing options...
Sherzod Posted December 30, 2020 Share Posted December 30, 2020 1 minute ago, x11 said: такое возможно реализовать или нет? Я попробую проанализировать. Quote Link to comment Share on other sites More sharing options...
Sherzod Posted December 30, 2020 Share Posted December 30, 2020 26 minutes ago, x11 said: заголовок остается слева, норм... но хотелось бы, чтобы за заголовком шли навигатор и кнопки, чтобы вот этого (обозначено красным http://prntscr.com/wd7adw ) не было - такое возможно реализовать или нет? Попробуйте проанализировать и применить такой вот "сложный" код: procedure TMainForm.UniFormReady(Sender: TObject); begin // первый параметр может быть больше ToolButtons.Count+1 with UniPanel1 do if TitleVisible then JSInterface.JSCode('var tm=new Ext.util.TextMetrics();'#1'.header.insert('+ (ToolButtons.Count+1).ToString +', {xtype:"tbspacer", width:'#1'.header.title.getWidth()-(tm.getWidth('#1'.getTitle())+10)});'); end; Quote Link to comment Share on other sites More sharing options...
x11 Posted December 31, 2020 Author Share Posted December 31, 2020 в соседней теме написал, здесь повторю ошибку: Uncaught TypeError: O32.header is undefined Quote Link to comment Share on other sites More sharing options...
Sherzod Posted December 31, 2020 Share Posted December 31, 2020 А на тестовом случае, работает? Quote Link to comment Share on other sites More sharing options...
x11 Posted December 31, 2020 Author Share Posted December 31, 2020 не работает, я на тестовом случае из той соседней темы проверяю procedure TUniFrame1.UniFrameReady(Sender: TObject); begin // with UniPanel2.JSInterface do // begin // JSCallDefer('header.insert', [0, UniDBNavigator1.JSControl], 300); // JSCallDefer('header.setHeight', [UniDBNavigator1.Height+12], 320); // end; with UniPanel2 do if TitleVisible then JSInterface.JSCode('var tm=new Ext.util.TextMetrics();'#1'.header.insert('+ (ToolButtons.Count+1).ToString +', {xtype:"tbspacer", width:'#1'.header.title.getWidth()-(tm.getWidth('#1'.getTitle())+10)});'); end; Quote Link to comment Share on other sites More sharing options...
Sherzod Posted December 31, 2020 Share Posted December 31, 2020 29 minutes ago, x11 said: в соседней теме написал, здесь повторю ошибку: Uncaught TypeError: O32.header is undefined Проблема при использовании uniAlignmentClient. UniPanel2.AlignmentControl = uniAlignmentClient Quote Link to comment Share on other sites More sharing options...
x11 Posted December 31, 2020 Author Share Posted December 31, 2020 33 minutes ago, Sherzod said: UniPanel2.AlignmentControl = uniAlignmentClient все верно, у меня именно так и установлено или нужно другое значение указать? Quote Link to comment Share on other sites More sharing options...
x11 Posted February 8, 2021 Author Share Posted February 8, 2021 On 12/30/2020 at 9:46 PM, Sherzod said: JSInterface.JSCode Подскажите еще, пожалуйста. А как то же самое сделать с кнопками TUniDBGrid? Как у TUniDBGrid сдвинуть Toolbuttons влево. А то попытался применить ваш код и получил ошибку: Quote O4AD.header is undefined Спасибо. Quote Link to comment Share on other sites More sharing options...
x11 Posted February 8, 2021 Author Share Posted February 8, 2021 О, получилось, только нужно использовать событие UniFrame OnReady 1 Quote Link to comment Share on other sites More sharing options...
x11 Posted April 14, 2021 Author Share Posted April 14, 2021 On 12/30/2020 at 9:46 PM, Sherzod said: SInterface.JSCode('var tm=new Ext.util.TextMetrics();'#1'.header.insert('+ (ToolButtons.Count+1).ToString +', {xtype:"tbspacer", width:'#1'.header.title.getWidth()-(tm.getWidth('#1'.getTitle())+10)});'); Проблема: если панель сворачиваемая (Collapsible := True), то одна из кнопок остается справа, а кнопка сворачивания уезжает влево Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.