簡體   English   中英

Java圖形對象和滾動-做到這一點的最簡單方法?

[英]Java graphics object and scrolling - easiest way to do it?

我正在開發一個帶有聊天框的游戲,但是盡管調查了一下,(我可能沒有在尋找合適的東西),但我仍無法找出為該游戲創建自定義“滾動窗格”的最佳方法圖形上的“文本框”繪制。 這種可怕的油漆表示形式顯示了我要完成的工作:

在此處輸入圖片說明

如果我可以提供更多信息,請詢問。 這是我能弄清楚如何解釋它的最好方法。

編輯:確定,因此要提供更多信息,游戲使用JPanel來顯示游戲。 這是通過覆蓋JPanel中的PaintComponent來完成的。 我不確定是否可以添加一個新的組件來進行繪制。 如果是這樣,那可能行得通。 我只需要能夠將其放置在特定位置即可。 如果可以在其中添加新的組件,那么它將起作用,我覺得自己是個白痴。

選項1)使用JScrollPane中保存的JTextArea。 選項2)使用JScrollPane中保存的JList。 JTextArea稍微簡單一些,但是JList可以更好地工作,並且如果需要保存大量數據,它的響應速度也更快。 教程可以在這里找到:

請注意,在快速瀏覽了Swing教程之后,您可能很快就可以回答這個問題,因此,為了將來參考,我提供了指向它們的鏈接。


編輯
請考慮以下選項以獲得更好的解決方案:

  • 請記住,您的GUI可以使用多個JPanel,並且實際上可以並且經常會使用多個
  • 僅使用繪圖JPanel即可進行繪圖,僅此而已。
  • 換句話說, 不要讓它包含任何其他組件。
  • 將其BorderLayout.CENTER放置在另一個當然使用BorderLayout的JPanel中。
  • 將您的其他非圖形控件結構放置在使用相同的BorderLayout並使用上述JPanel的JPanels中。 這樣,您的控件結構(例如JScrollPane)將顯示在GUI中,但不會覆蓋並覆蓋圖形JPanel。
  • 將使用BorderLayout的主JPanel添加到頂級窗口中,或者如果需要,則將其添加到另一個JPanel中,如果需要更復雜的GUI。
  • 您將希望這些子JPanels使用它們自己的布局,以便整個GUI具有易於更改和增強的令人愉悅的外觀。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM