我正在开发一个非常基础的Java视频播放器项目,这是我的课程。我有2个JTextPanes:1个用于列出所有视频,1个用于创建播放列表。
到目前为止,我可以将视频添加到播放列表的唯一方法是将视频ID(来自数据库)放在文本字段中,然后单击“添加”按钮。但是我希望我的播放器能够通过单击JTextPane(所有视频)的列,将视频添加到JTextPane或其他任何内容(如果您认为更好(播放列表))。我想我必须将鼠标监听器添加到JTextPane。
但是如何将鼠标侦听器添加到JTextPane的每个列?任何帮助&建议非常感谢!
提前致谢!
答案 0 :(得分:4)
您可能希望更改为使用JList
,因为您正在处理所有视频的列表。
然后,您可以轻松找到用户选择的视频,使用JList.getSelectedItem()
并将其添加到播放列表中。
您不能将MouseListener添加到JTextPane的特定行(您是指行,而不是列?),只能添加到整个窗格。但是,您可以使用JTextPane.viewToModel(Point p)
找出用户点击文本的位置。然而,这可能是一种不必要的复杂的列表方式。
答案 1 :(得分:2)
您可以使用它来获取JTextPane中的行/列位置 http://java-sl.com/tip_row_column.html