Использование Swing на Java 6u16, WinXP SP3
Привет всем. Мне нужна помощь, пожалуйста, в следующем случае.
В основном я использую JTable внутри JScrollPane, что на scrollPane я применяю компонентную ориентацию справа налево. Окончательный результат, который я получаю, таков, что таблица действительно прикреплена справа, но заголовок помещается слева, когда область прокрутки больше ширины таблицы. Это происходит только с пользовательскими заголовками таблиц и AUTO_RESIZE_OFF для столбцов таблицы (чтобы получить горизонтальную прокрутку).
Вторая (связанная) проблема - это перетаскивание вертикальных линий сетки для изменения размера столбцов - строка заголовка перемещается влево, когда Строка столбца таблицы перемещается вправо.
У меня есть 2 теста. Первый использует код из http://www.swebb99.f2s.com/GroupableHeader/. Это реализация заголовка таблицы с открытым исходным кодом, которая используется для группировки некоторых заголовков подколонок.
Пожалуйста, добавьте к main () в GroupableColumnExample.java:
frame.applyComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
Во втором контрольном примере используется реализация JIDE (www.jidesoft.com) для вложенного заголовка таблицы с той же целью и с теми же результатами.
import java.awt.ComponentOrientation;
import javax.swing.*;
import com.jidesoft.grid.JideTable;
public class TestCase {
public static void main(String[] args) {
JFrame frame = new JFrame("Demo");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JideTable table = new JideTable(
new Object[][]{{"1", "2"}}, new String[]{"3", "4"});
//this line adds the custom header and the problem begins
table.setNestedTableHeader(true);
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
frame.add(new JScrollPane(table));
//make frame bigger than needed to display the table
frame.setSize(200, 200);
frame.applyComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
frame.setVisible(true);
}
}
Пожалуйста, помогите мне решить эту проблему, поскольку я ничего не нашел через Google и не могу решить проблему самостоятельно.