MQL로 작성된 UI 갤러리 - 페이지 37

 
Edgar Akhmadeev #:

질문:

카탈로그에 "포함\(1) KIB 1.0\(1) BASE\(1) DOCUMENTATION\"이 있습니다.

이것은 단순한 코드 샘플인가요, 아니면 데모 프로그램으로 함께 컴파일하기 위한 것인가요? 올바른 사용 방법은 무엇인가요?

가장 잘 작동하는 코드는 "Include\(1) KIB 1.0\(1) BASE\(2) STATE KIB-CODE" 폴더에 있습니다.

디자이너의 창 코드가 있습니다. 당신은 그들을 공부할 수 있습니다.

 
Реter Konow #:

1. V-박스와 탭은 항상 별도의 그룹으로 작성됩니다. 이것이 더 편리합니다. 이 그룹에 다른 것을 추가하지 않는 것이 바람직합니다. 그렇지 않으면"포지셔닝 정글"이 시작됩니다. 물론 이런 식으로 할 수 있지만 그만한 가치는 없습니다 ...


리태그 코나우 #: 매우 중요한 뉘앙스입니다. 탭은 V_BOX(a) 캔버스 이미지의 전환을 제어합니다. 위에 선언해야 합니다. 탭을 먼저 선언한 다음 V_BOX ( 들)을 선언해야 합니다.

아직 탭으로 작업하는 방법을 찾지 못했습니다. H_TAB을 그려 보았지만 버튼일 뿐이고 탭을 사용하여 탭을 전환하는 방법을 모르겠습니다. 탭이 두 개 있는 예제가 있으면 좋겠어요. 아니면 너무 이른 건가요?


코나우 #:

3. 표에 "TEXT"라는 단어를 넣었습니다. 이것은 불필요합니다. CELL 셀에는 연결 시 사용자 애플리케이션에서 값을 가져오는 자체 매개 변수가 있습니다. 또는 V_CURRENT라는 단어를 사용하여 값을 설정합니다.

필요한 것은 CELL이며 셀은 프로그래밍 방식으로 채워집니다. 지금까지는 고정 값을 설정했습니다.

그리고 V_CURRENT가 도움이되었고 쓰레기가 사라졌습니다.


R etag Konow #: 또 다른 중요한 뉘앙스. 모든 테이블에는 헤더에 T_HEADER 요소가 있습니다.

예, 첫 번째 테이블에서는 행 이름에 대한 열을 생성하기 때문에 적절합니다.

두 번째 테이블에서는 이 열이 필요하지 않으므로 추가하지 않았습니다. 하지만 잘 작동했습니다.

두 번째 테이블은 향후 이벤트 로그입니다. 혹시 이 테이블이 나쁜 옵션일까요? 프로그래밍 방식으로 행을 추가하기가 어렵다면요.

 
Edgar Akhmadeev #:

H_TAB의 '신고'에서 아이콘을 추가하기 전까지는 제목을 왜곡하는 아이콘의 유령이 있었습니다. 아이콘을 클릭한 후 사라졌습니다.

버그인지는 모르겠지만 설명된 TEXT_ALIGN_*가 누락되었습니다.

아직 답변이 없습니다.

그리고 TB_BUTTON 대신 I_BUTTON을 적용하고 싶었지만 기본적으로 아이콘과 텍스트를 정렬하는 방법을 알아야합니다.

 
Edgar Akhmadeev #:

탭으로 작업하는 방법을 아직 찾지 못했습니다. H_TAB을 그렸지만 버튼 일 뿐인데이를 사용하여 탭을 전환하는 방법을 모릅니다. 탭이 두 개 있는 예제를 보고 싶어요. 아니면 너무 이른 건가요?

셀은 정확히 내가 필요로하는 것이며 셀은 프로그래밍 방식으로 채워질 것입니다. 지금까지는 고정 값을 설정했습니다.

그리고 V_CURRENT가 도움이되었고 쓰레기가 사라졌습니다.

예, 첫 번째 테이블에서는 행 이름에 대한 열을 생성하기 때문에 적절합니다.

두 번째 테이블에서는이 열이 필요하지 않으므로 추가하지 않았습니다. 하지만 잘 작동했습니다.

두 번째 테이블은 향후 이벤트 로그입니다. 이 테이블이 나쁜 옵션일까요? 프로그래밍 방식으로 행을 추가하기가 어렵다면요.

라벨 메뉴 창에서 "포함\(1) KIB 1.0\(1) BASE\(2) STATE KIB-CODE" 를 예로 들어 보겠습니다. 이것은 탭 그룹과 V_BOX를 선언합니다. 세 개의 탭에 대해 하나만 있습니다. 각 탭에는 고유한 아이콘 그룹이 있습니다. 이것을 템플릿으로 사용할 수 있습니다. 상단에는 탭만 있고 하단에는 탭이 없습니다. 하단에 배치해 보세요. 잘 될 것 같아요.


//===================================================================================================================
 GROUP, "Main tabs",

__, H_TAB, "16x16",ON,   H_TAB, "24x24",  H_TAB, "32x32", GAP,150, EDIT, "E1", W, 320, _,READ_ONLY,  

END_GROUP,
//----------------------------
i, AT, _X2X, "MF", 2, _Y2Y, "MF",2,

i, SWITCH,"16x16","24x24","32x32",END,
i, TENURED,
i, H_TABS, AH_COLOR, (int)C'255,255,255', A_COLOR, (int)C'255,255,255', N_COLOR, (int)C'250,250,250',
 
 P_COLOR,(int)C'236,244,252',  NPG_LINES,20, NPG_STEP,1, NG_LINES,20, NG_STEP,1, END,

"16x16",     IS_APPEARANCE_CONTROLLER,  "LABELS 16*16",END,
"24x24",     IS_APPEARANCE_CONTROLLER,  "LABELS 24*24", END,
"32x32",     IS_APPEARANCE_CONTROLLER,  "LABELS 32*32", END,
//----------------------------------------------------------------------------------
"LABELS 16*16","24x24","32x32", 
//===================================================================================================================

//===================================================================================================================
//----------------------------------------------------------------------------------
GROUP,"Labels v_box 16*16",

__,   V_BOX,"V1", W,800, _,H,330,_,N_FRAME,1,_,A_FRAME,1,_,NP_FRAME,1, AP_FRAME,1,

END_GROUP,
//----------------------------
i, AT, _X2X, "16x16", 0, _Y2H, "16x16", -1,/**/
//===================================================================================================================
 
Edgar Akhmadeev #:

아직 답변이 없습니다.

그리고 TB_BUTTON 대신 I_BUTTON을 적용하고 싶었지만 기본적으로 아이콘과 텍스트를 정렬하는 방법을 알아야합니다.

나는 그것에 대해 생각해야합니다. 많은 것을 잊어 버렸습니다. 해결책을 찾아서 알려드리겠습니다.

 
Edgar Akhmadeev #:

아직 답변이 없습니다.

그리고 TB_BUTTON 대신 I_BUTTON을 적용하고 싶었지만 기본적으로 아이콘과 텍스트를 정렬하는 방법을 알아야합니다.

C_HEADER와 동일한 접근 방식을 사용하세요:

i, C_HEADERS, 
        TEXT_STYLE, (int)FW_BOLD, 
        FONT_SIZE, 10, 
        text, _A1_, _X2X, 
        text, _C1_, 20, 
        text, N_COLOR, (int)C'86,86,86', 
        NG_LINES, 30, NG_STEP, -1,
        POINTED, 0, 
        N_COLOR, (int)C'219,233,249', A_COLOR, (int)C'155,244,196', AH_COLOR, (int)C'155,244,196', 
        END,

예를 들어

i, I_BUTTONS,  text, _A1_, _X2X,  text, _C1_, 30,    label, _A1_, _X2X,  label, _C1_, 5,     W, 120, H,30,    END,
 
Реter Konow #:
i, I_BUTTONS, text, _A1_, _X2X, text, _1_, 30, label, _A1_, _X2X, label, _1_, 5, W, 120, H,30, END,


작업줄.

 

요소에 아이콘과 텍스트를 배치하는 두 번째 변형입니다:

i, I_BUTTONS,  
     //-------------- 
    text, _A1_, _C2C, // Привязка текста к центру кнопки по оси Х  (_C2C - center to center). 
    text, _C1_,    0// Поправка позиции относительно центра кнопки по оси Х (0). 
     //-------------- 
    text, _A2_, _C2C,  // Привязка текста к центру кнопки по оси Y  (_C2C - - center to center). 
    text, _C2_,   10// Поправка позиции текста относительно центра кнопки по оси Y  (10). 
     //-------------- 
    label, _A2_, _Y2Y, // Привязка иконки к верху кнопки по оси Y  (_Y2Y  - Y to Y). 
    label, _C2_,   5// Поправка позиции иконки относительно Y координаты кнопки по оси Y  (5). 
     //-------------- 
    W, 100 , H, 50 , 
     //-------------- 
    END,
   //------------------------------------------------------ 
   "Button 1" , N_LABEL, "::Images\\16x16\\Lock.bmp" ,
   //------------------------------------------------------


text, _A1_, _C2C, // 텍스트를 X축을 따라 버튼 중앙에 바인딩합니다(_C2C - 중앙에서 중앙으로).

text, _1_, 0, // X축을 따라 버튼 중앙을 기준으로 위치 수정(0).

//--------------

text, _A2_, _C2C, // 텍스트를 Y축을 따라 버튼 중앙에 바인딩합니다(_C2C - - 중앙에서 중앙으로).

text, _A2_, 10, // Y축을 따라 버튼 중앙을 기준으로 텍스트 위치를 수정합니다(10).

//--------------

label, _A2_, _Y2Y, // 아이콘을 Y축을 따라 버튼 상단에 스냅합니다(_Y2Y - Y 대 Y 좌표).

label, _2_, 5, // Y축을 따라 버튼의 Y좌표를 기준으로 아이콘 위치를 수정합니다(5).




 

기본적으로 버튼 내부에 텍스트와 아이콘을 배치할 수 있는 옵션은 두 가지뿐입니다. 두 가지 모두 위에 표시되어 있습니다.

텍스트와 아이콘이 있는 모든 요소의 템플릿으로 사용할 수 있습니다. 요소 이름, 아이콘, 텍스트 및 수정 사항(_1, _2)을 변경하기만 하면 됩니다.

기술적으로는 요소 내부에 다른 텍스트 및 아이콘 배열 변형을 만들 수 있지만 실제로는 의미가 없습니다. 필요하다면 고려할 수 있습니다.

일반적으로 템플릿이 준비되었습니다. 사용해 보세요.

 
Edgar Akhmadeev #:

아직 답변이 없습니다.

...

제 답변이 도움이 되었나요?