2014-04-14 5 views
1

무엇, 나는 이미 내가 그것을 제공하고 initWidgetUibinder와 FlexTable 또는 대안

@UiField(provided = true) FlexTable contentTable; 

을 befor을 시작한다는 것을 알고하지만 단순히으로있는 테이블을 필요 uiBinder와의 corperation에 flextable를 사용하는 가장 좋은 방법입니다 입력 행렬은 다음과 같습니다.

pseudo: 

Label."Name: " TextBox() 
Label."Password: " TextBox() 

FlexTable을 고려하거나 좋은 Alternativ가 있습니까? 도움 주셔서 감사합니다.

+1

그런데 "initWidget 전에 제공하고 초기화 할 필요가 없습니다"... UiBinder 템플릿을 사용하여 제공 할 수없는 생성자 인수가 필요한 사용자 정의 위젯에만 해당합니다 (최소한 깨끗한 상태로 방식) –

답변

3

양식 레이아웃 용 테이블을 사용하는 것이 최선의 선택이 아니며 좋은 습관이 아닙니다.

당신은 단지 UiBinder과 HTMLPanel을 사용하고, "보통"페이지에서와 같은 위젯에 대한 몇 가지 추가 GWT 태그, HTML에서 모든 것을 할 수 있습니다 : 당신은 단지 테이블을 원하는 경우

<g:HTMLPanel> 
    <div class="formInput"> 
     <g:Label text="First Name - W3C style : "> 
     <g:TextBox ui:field="firstNameTextBox"> 
    </div> 


    <table> 
    <tbody> 
     <tr> 
      <td>Last name - table style :</td> 
      <td><g:TextBox ui:field="lastNameTextBox" /></td> 
     </tr> 
     <tr> 
      <!-- Other form fields --> 
     </tr> 
    </tbody> 
    </table> 
</g:HTMLPanel> 
+0

감사합니다. 나는 이미 그렇게했다. 최선의 접근 방법인지 확실하지 않았고,이 질문에 대해 다음과 같이 대답했습니다. 빠른 대답에 감사드립니다. – vicR

0

입력 양식을 표시합니다. 나는 다음과 같이 GWT 위젯을 혼합 한 순수 HTML 위젯의 사용을 고려할 것입니다.

<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder" 
     xmlns:g="urn:import:com.google.gwt.user.client.ui"> 
<ui:style> 

</ui:style> 
<g:HTMLPanel> 
    <table> 
     <tr> 
      <td>Name:</td> 
      <td> 
       <g:TextBox ui:field="name"/> 
      </td> 
     </tr> 
     <tr> 
      <td>Password</td> 
      <td> 
       <g:PasswordTextBox ui:field="password"/> 
      </td> 
     </tr> 
    </table> 
    </g:HTMLPanel> 
</ui:UiBinder> 

데이터 또는 편집 가능한 데이터를 표시하는 데 FlexTable을 사용하는 것이 좋습니다. 이러한 유형의 정보를 표시하는 데 정말 빠르기 때문입니다. 내가 본 것에서는 위젯을 과도하게 사용하면 애플리케이션 속도가 느려집니다.