2009-12-08 68 views

回答

5

創建一個自定義JTextField並覆蓋paint()方法。例如:

public void paint(Graphics g) 
{ 
    super.paint(g); 
    // do custom painting here 
} 

注意:通常自定義繪畫是通過覆蓋組件的paintComponent(..)方法來完成的。所以你也可以這樣做:

public void paintComponent(Graphics g) 
{ 
    super.paintComponent(g); 
    // do custom painting here 
} 

和結果將是相同的,因爲JTextField沒有任何子組件添加到它。但是我建議使用paint(...),因爲如果您想在支持子組件的組件(如JPanel)上繪製對角線,此方法可以工作。請通過閱讀Custom Painting上的Swing教程中的部分,確保您瞭解這兩種方法之間的區別。

或者另一種選擇是創建一個自定義熒光筆,在選定的文本上繪製對角線。 RectanglePainter可以讓你開始使用這種方法。

因此,根據您的要求,您有幾個不同的選項。