Jump to content
uniGUI Discussion Forums
Sign in to follow this  
Alexander Muromsky

Как при выборе строки в unimDBGrid поменять её цвет???

Recommended Posts

Добрый день.

 

Необходимо при выборе строк  в unimDBGrid выделять их другим цветом (менять цвет фона и текста).

На форуме по данному вопросу ничего не нашел.

 

Версия UniGUI: Complete Professional 1.10.0.1457

 

Спасибо.

 

 

Share this post


Link to post
Share on other sites

Спасибо!

Но это немного не то...

Мне необходимо что-бы при первом нажатии на строку цвет фона запоминался, а при повторном нажатии становился тем , который был по умолчанию.

Если в beforeInit прописываю config.itemCls = '_x-item-selected';  то все строки закрашиваются и

и никакого эффекта нет при выборе нужной строки:

 

function beforeInit(sender, config)
{
  var SelRowType = document.getElementsByName('LineChk')[0];
  if (SelRowType == "ДА"){
    config.itemCls = '_x-item-selected';
    } else {
    config.itemCls = '_x-item-unselected';
    }
}

 

74076045a44666ba7b732bd8a0a32693-full.pn

Share this post


Link to post
Share on other sites

То-есть необходимо в зависимости от значения поля менять цвет всей строки.

Например:

Если значение = 0 , то использовать цвет установленный по умолчанию в unimDBGrid.

Если значение = 1 , то зеленый.

Если значение = 2 , то красный.

Share this post


Link to post
Share on other sites

Добрый день,

 

Может этот пример Вам стоит посмотреть ?:

 

\FMSoft\Framework\uniGUI\Demos\Touch\DBGrid - DrawColumnCell

Share this post


Link to post
Share on other sites

Добрый день,

 

Может этот пример Вам стоит посмотреть ?:

 

\FMSoft\Framework\uniGUI\Demos\Touch\DBGrid - DrawColumnCell

 

По данному пути в версии 1457 пример отсутствует (((

Я сначала просмотрел все примеры как для Desktop так и Touch, но ничего похожего там нет.

Мне это необходимо сделать в мобильной версии...

Share this post


Link to post
Share on other sites

Вот здесь нашел вариант:

http://skirtlesden.com/articles/styling-extjs-grid-cells

  --> Styling Rows

Но как это переложить для использования в данной версии uniGUI под ExtJS 6.5

Share this post


Link to post
Share on other sites

По данному пути в версии 1457 пример отсутствует (((

Я сначала просмотрел все примеры как для Desktop так и Touch, но ничего похожего там нет.

Мне это необходимо сделать в мобильной версии...

Попробуйте обновиться до последней версии...

 

http://forums.unigui.com/index.php?/topic/10516-unigui-1100/page-2&do=findComment&comment=55982

Share this post


Link to post
Share on other sites

Спасибо!!!

Всё получилось!!!

 

можно пример как в итоге сделали?

Share this post


Link to post
Share on other sites

Здравствуйте,

 

можно пример как в итоге сделали?

 

 

Может этот пример Вам стоит посмотреть ?:

 

\FMSoft\Framework\uniGUI\Demos\Touch\DBGrid - DrawColumnCell

Share this post


Link to post
Share on other sites

Добрый день!

 

Конечно можно....

procedure TMyForm.UnimDBGrid1DrawColumnCell(Sender: TObject; ACol,
  ARow: Integer; Column: TunimDBGridColumn; Attribs: TUniCellAttribs);
begin

    if ds.FieldByName('AGE').AsInteger > 18 then
      Attribs.Color := $DFFFDF
    else  Attribs.Color := $DFDFFF;

    if ds.FieldByName('AGE').AsInteger = 25 then 
      Attribs.Font.Style := [fsBold]
    else  Attribs.Font.Style := [];

    if ((Column.FieldName = 'FIO') and (ds.FieldByName('FIO').AsString = 'Иванов Иван Иванович')) then
      Attribs.Font.Color := clRed; 
    
end;

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×