2011-04-05 2 views
0

두 개의 텍스트 상자 주위에 테두리를 그리는 중입니다. 주 화면의 배경색 만 그대로두면 작동합니다. 파란색 배경의 색 구성표에 대한 클라이언트의 사양 호출입니다. EditFields가 화면에 그려지면 화면에 걸쳐있는 하나의 필드로 나타납니다. 두 가지가 있다고 가정 할 때마다 포커스를 얻으므로 2가 있습니다. 그렇지 않으면 다르게 작동합니다. 그런 다음 두 개의 EditField가 GridFieldManager에 추가되어 레이아웃을 제어합니다. enter image description here편집 테두리 주위에 테두리 - 검은 딸기

은 내가 EditFields를 서브 클래스 등처럼 EXEditFields의 각 주위에 테두리를 추가하고 : 그건 좋은 블랙 베리 참조 문서에 많이 존재하지 않기 때문에

public class EXEditField extends EditField { 

    ... 


    private void init(MainScreen scrn) { 
       if (this.hasVirtualKeyboard()) 
        this.vkbd = scrn.getVirtualKeyboard(); 

       this.setMaxSize(this.MAX_CHARS); 

       this.setBorder(BorderFactory.createRoundedBorder(new XYEdges(0,0,0,0), Border.STYLE_SOLID)); 
       this.setBackground(BackgroundFactory.createSolidBackground(Color.WHITE)); 
       //this.setPadding(3, 3, 3, 3); 
       //this.setMargin(0, 3, 0, 3); 
      } 

    ... 

    } // end class 

어떤 도움을 크게 감사합니다. 당신은 사용자 정의 EditField 내 paintBackground 방법을 변경 시도 할 수

+0

마이크 어떤 것이 달성 될지 불분명합니다. 두 편집 필드 중 각각의 경계선을 원하십니까? 또한 포커스가 켜지거나 꺼질 때 편집 필드의 테두리/배경을 변경해야합니까? –

+0

@Arhimed 내 잘못입니다. 설명을 위해 편집되었습니다. 필드가 표시되는 방법이나 포커스 변경 또는 기타 변경으로 인해 변경하려고 시도하는 방법에 관한 내용은 없습니다. –

+0

죄송합니다. 아직 명확하지 않습니다. 사실입니까? 'EXEditField 주위에 테두리를 표시하려고하지만 테두리가 표시되지 않습니다.' 아니면 다른 것? –

답변

2

, this을 확인합니다.

사용자 정의 테두리가있는 EditField를 포함하여 일부 사용자 정의 BlackBerry 필드를 제공하는 오픈 소스 라이브러리입니다. 원하는 테두리를 표시하도록 코드를 수정할 수 있어야합니다.

+0

유망 해 보인다. –

+0

@Arihmed 단축 다이얼을 사용해야합니다. 내가 여기서 나가는 모든 블랙 베리 질문에 당신이 대답했다고 생각합니다. –

+0

@Mike D : :))))) –

0

, 당신의 EditField 클래스에이 코드를 넣어보십시오

확인
protected void paintBackground(Graphics graphics) { 

     graphics.setColor(Color.BLACK); 
     graphics.drawRect(0, 0, getWidth(), getHeight()); 

     graphics.setColor(Color.WHITE); 
     graphics.fillRect(0, 0, getWidth(), getHeight()); 
    }