The alignment of the columns and field values in DCBROWSE

This forum is for eXpress++ general support.
Post Reply
Message
Author
User avatar
Eugene Lutsenko
Posts: 1649
Joined: Sat Feb 04, 2012 2:23 am
Location: Russia, Southern federal district, city of Krasnodar
Contact:

The alignment of the columns and field values in DCBROWSE

#1 Post by Eugene Lutsenko »

Please tell me how to set alignment of columns and field values in the DCBROWSE.
I'd like to center or left-aligned
Attachments
Без имени-1.jpg
Без имени-1.jpg (115.14 KiB) Viewed 9115 times

Wolfgang Ciriack
Posts: 484
Joined: Wed Jan 27, 2010 10:25 pm
Location: Berlin Germany

Re: The alignment of the columns and field values in DCBROWS

#2 Post by Wolfgang Ciriack »

Use the ALIGN statement with DCBROWSECOL.
F.e. ALIGN XBPALIGN_RIGHT+XBPALIGN_VCENTER
The XBPALIGN_xx definitions you find in XBP.ch.
_______________________
Best Regards
Wolfgang

User avatar
Eugene Lutsenko
Posts: 1649
Joined: Sat Feb 04, 2012 2:23 am
Location: Russia, Southern federal district, city of Krasnodar
Contact:

Re: The alignment of the columns and field values in DCBROWS

#3 Post by Eugene Lutsenko »

Wolfgang Ciriack wrote:Use the ALIGN statement with DCBROWSECOL.
F.e. ALIGN XBPALIGN_RIGHT+XBPALIGN_VCENTER
The XBPALIGN_xx definitions you find in XBP.ch.
Thank You, Wolfgang!
But I somehow centered only the headers, and the contents of the fields remained aligned to the right:

Code: Select all

                   /* ----- Create ToolBar ----- */

                   d = 120                                                                                                     
                   @13.2, 0             DCPUSHBUTTON CAPTION 'Помощь'                         SIZE 10, 1.5 ACTION {||HelpLW209()  , DC_GetRefresh(GetList)}
                   @13.2, DCGUI_COL+d   DCPUSHBUTTON CAPTION 'Пересчитать параметры'          SIZE 24, 1.5 ACTION {||RecalcParam(), DC_GetRefresh(GetList)}
                   @13.2, DCGUI_COL+d+4 DCPUSHBUTTON CAPTION 'Выход на расчет RND-приложений' SIZE 32, 1.5 ACTION {||OutputCalc() , DC_GetRefresh(GetList)} FONT '9.Arial Bold'
                   
                   ****** Отображение таблицы ***************
                   
                   DCSETPARENT TO
                   
                   @ 1, 0 DCBROWSE ParamRND ALIAS 'ParamRND' SIZE 101,12.0 ;
                          EDIT xbeBRW_ItemSelected MODE DCGUI_BROWSE_EDITDOWN ;            // Редактирование БД
                          NOSOFTTRACK ;
                          HEADLINES 3 ;                      // Кол-во строк в заголовке (перенос строки - ";")
                          NOHSCROLL NOVSCROLL ;              // Убрать горизонтальную и вертикальную полосы прокрутки
                          SCOPE ;
                          ITEMMARKED bItems
                   
                   DCSETPARENT ParamRND
                   
                   *   aStructure := { { "Num"       , "N",  5, 0 }, ;   //  1
                   *                   { "ParamName" , "C", 40, 0 }, ;   //  2
                   *                   { "InitValue" , "N", 15, 0 }, ;   //  3
                   *                   { "StepChang" , "N", 15, 0 }, ;   //  4
                   *                   { "FinalValue", "N", 15, 0 }  }   //  5
                   *   DbCreate( 'ParamRND', aStructure )
                   
                   *** Подарок от Роджера
                   
                   DCBROWSECOL FIELD ParamRND->Num        HEADER "Номер;параметра"              PARENT ParamRND FONT "9.Courier" WIDTH  5 PROTECT {|| .T. } COLOR {||{nil,aColor[100]}} ALIGN XBPALIGN_HCENTER+XBPALIGN_VCENTER
                   DCBROWSECOL FIELD ParamRND->ParamName  HEADER "Наименование;параметра"       PARENT ParamRND FONT "9.Courier" WIDTH 45 PROTECT {|| .T. } COLOR {||{nil,aColor[100]}} ALIGN XBPALIGN_HCENTER+XBPALIGN_VCENTER
                   DCBROWSECOL FIELD ParamRND->InitValue  HEADER "Начальное;значение;параметра" PARENT ParamRND FONT "9.Courier" WIDTH 15                   COLOR {||{nil,aColor[ 38]}} ALIGN XBPALIGN_HCENTER+XBPALIGN_VCENTER
                   DCBROWSECOL FIELD ParamRND->StepChang  HEADER "Шаг;изменения;параметра"      PARENT ParamRND FONT "9.Courier" WIDTH 15                   COLOR {||{nil,aColor[ 38]}} ALIGN XBPALIGN_HCENTER+XBPALIGN_VCENTER
                   DCBROWSECOL FIELD ParamRND->FinalValue HEADER "Конечное;значение;параметра"  PARENT ParamRND FONT "9.Courier" WIDTH 15 PROTECT {|| .T. } COLOR {||{nil,aColor[100]}} ALIGN XBPALIGN_HCENTER+XBPALIGN_VCENTER
                   
                   DCGETOPTIONS SAYFONT '10.Helv Bold' TABSTOP AUTORESIZE
                   
                   DCREAD GUI ;
                      FIT ;
                      OPTIONS GetOptions ;
                      MODAL ;
                      TITLE 'Задание параметров для расчета RND-моделей' ;
                      EVAL {|o|SetAppFocus(ParamRND:GetColumn(1))}
[/size]
Attachments
Без имени-1.jpg
Без имени-1.jpg (141.4 KiB) Viewed 9085 times

User avatar
rdonnay
Site Admin
Posts: 4813
Joined: Wed Jan 27, 2010 6:58 pm
Location: Boise, Idaho USA
Contact:

Re: The alignment of the columns and field values in DCBROWS

#4 Post by rdonnay »

Your columns do not align the way you want because the data is padded with spaces.
Numeric values are "left padded" with spaces.
Character values are "right padded" with spaces.
You must convert to a character string and trim the data to get a left aligned or center aligned value.

If you expect any kind of left or HCENTER alignment to work correctly, you must trim the data.

Code: Select all

DCBROWSECOL DATA {||Alltrim(Str(ParamRND->Num))} ;
        HEADER "Номер;параметра" ;
        PARENT ParamRND FONT "9.Courier" WIDTH  5 PROTECT {|| .T. } COLOR {||{nil,aColor[100]}} ;
        ALIGN XBPALIGN_HCENTER+XBPALIGN_VCENTER
The eXpress train is coming - and it has more cars.

User avatar
Eugene Lutsenko
Posts: 1649
Joined: Sat Feb 04, 2012 2:23 am
Location: Russia, Southern federal district, city of Krasnodar
Contact:

Re: The alignment of the columns and field values in DCBROWS

#5 Post by Eugene Lutsenko »

Thank You, Roger! All ingenious is simple!
Attachments
Без имени-1.jpg
Без имени-1.jpg (140.12 KiB) Viewed 9067 times

Post Reply