동일한 필드에서 다른 글꼴 크기로 페인트 방법으로 텍스트를 가져올 수있는 방법은 무엇입니까? 당신이 정말로 오버라이드 (override) paint()
방법 내부의 글꼴 크기를 변경하여이 작업을 수행하려면같은 필드의 다른 글꼴 크기
2
A
답변
4
, 당신은 다음과 같이 사용할 수 있습니다, I 필드 NON_FOCUSABLE
했습니다
public TextScreen() {
super(MainScreen.VERTICAL_SCROLL | MainScreen.VERTICAL_SCROLLBAR);
final int MAX_FONT_SIZE = 24;
// this is the font style to use, but the SIZE will only apply to the
// beginning of the text
Font f = Font.getDefault().derive(MAX_FONT_SIZE);
TextField text = new TextField(Field.NON_FOCUSABLE) {
public void paint(Graphics g) {
char[] content = getText().toCharArray();
Font oldFont = g.getFont();
int size = MAX_FONT_SIZE;
// use the baseline for the largest font size as the baseline
// for all text that we draw
int y = oldFont.getBaseline();
int x = 0;
int i = 0;
while (i < content.length) {
// draw chunks of up to 3 chars at a time
int length = Math.min(3, content.length - i);
Font font = oldFont.derive(Font.PLAIN, size--);
g.setFont(font);
g.drawText(content, i, length, x, y, DrawStyle.BASELINE, -1);
// skip forward by the width of this text chunk, and increase char index
x += font.getAdvance(content, i, length);
i += length;
}
// reset the graphics object to where it was
g.setFont(oldFont);
}
};
text.setFont(f);
text.setText("Hello, BlackBerry font test application!");
add(text);
}
참고 경우 때문에 이 같은 paint()
에서 글꼴을 변경하여 필드를 속여, 파란색 커서는 기본 텍스트와 일치하지 않습니다. drawFocus()
을 무시하고 아무것도 수행하지 않고 커서를 제거 할 수도 있습니다.
포커스 요구 사항을 지정하지 않았으므로 원하는 내용을 알지 못했습니다.
다른 대안을 고려하고 싶다면 RichTextField은 동일한 필드 내에서 글꼴 크기 (또는 다른 텍스트 속성)를 변경하는 데 더 적합하다고 생각합니다. 내 예제처럼 텍스트를 점차 축소하려는 경우이 paint()
구현은 괜찮을 것입니다. 귀하의 분야에서 특정 단어을 선택하여 (예 : <span>
태그를 사용하는 것과 같이) 더 큰 글꼴로 그리려면 RichTextField이 아마도 가장 좋은 방법 일 것입니다.
관련 문제
- 1. 어디서나 같은 글꼴 크기
- 2. 같은 글꼴 크기
- 3. Extjs 디스플레이 필드의 글꼴 크기 변경
- 4. 다른 글꼴이있는 글꼴 크기
- 5. JFreeChart 다른 글꼴 또는 제목의 글꼴 크기
- 6. 다른 화면의 Android 글꼴 크기
- 7. 브라우저별로 매우 다른 글꼴 크기
- 8. sIFR : 다른 글꼴 크기 렌더링
- 9. 글꼴 크기
- 10. 다른 축에서 같은 크기?
- 11. 동일한 요소에 대해 다른 글꼴 크기 정의
- 12. PHPExcel의 글꼴 색상, 글꼴 크기 및 글꼴 크기 설정
- 13. 는 DBF 필드의 크기
- 14. 글꼴 색상, 크기, 글꼴 변경
- 15. 글꼴 및 글꼴 크기 변경
- 16. 변경 글꼴 크기
- 17. PRAWN fallback_fonts에 다른 글꼴 크기 설정
- 18. 유니 코드 글꼴의 다른 글꼴 크기
- 19. 다른 그림, 글꼴, 크기 레이블 MATLAB
- 20. 텍스트 상자의 줄마다 다른 글꼴 크기 설정
- 21. VIM : 각 분할에서 다른 글꼴 크기
- 22. iOS 불꽃 놀이와 다른 ArialMT 글꼴 크기
- 23. QTableWidgetItem 단일 셀에서 다른 글꼴 크기
- 24. CSS 다른 글꼴 크기 윈도우/리눅스/맥
- 25. 파이어 폭스 만 다른 글꼴 크기
- 26. 다른 dpis에서 글꼴 크기 관련 문제
- 27. TinyMCE에 사용자 정의 글꼴 크기 내가 TinyMCE에있는 글꼴 크기 옵션을 증가하는 방법을 알고 글꼴 크기 목록
- 28. 텍스트 필드의 글꼴 색상 변경
- 29. Interface Builder에서 크기 클래스로 글꼴 크기 변경
- 30. 줄 크기 및 글꼴 크기