расширенный просмотр содержимого ячейки таблицы по ПКМ
This commit is contained in:
@@ -3,6 +3,7 @@ import Common.CommonConstants;
|
||||
import Common.Utils.Utils_;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
public class TableMenu extends StyledPopupMenu {
|
||||
int row = CommonConstants.Nan;
|
||||
int column = CommonConstants.Nan;
|
||||
@@ -10,12 +11,19 @@ public class TableMenu extends StyledPopupMenu {
|
||||
//-
|
||||
JTable owner = null;
|
||||
VisualiserMenuItem mcopy;
|
||||
JTextArea value_view;
|
||||
JScrollPane value_scroll;
|
||||
public TableMenu(JTable owner_in) {
|
||||
owner = owner_in;
|
||||
mcopy = new VisualiserMenuItem("Копировать текст текущей ячейки", "/icons/Editor/Copy.png");
|
||||
//если удалось нажать значит все условия выполнены
|
||||
mcopy.addActionListener(e -> Utils_.CopyToClipboard(target.toString()));
|
||||
add(mcopy);
|
||||
//
|
||||
add(value_scroll= new JScrollPane(value_view = new JTextArea()));
|
||||
value_view.setEditable(false);
|
||||
value_view.setLineWrap(true);
|
||||
value_view.setWrapStyleWord(true);
|
||||
}
|
||||
@Override
|
||||
public void CheckElementsVisibility() {
|
||||
@@ -24,7 +32,14 @@ public class TableMenu extends StyledPopupMenu {
|
||||
if ((row >= 0) && (column >= 0)) {
|
||||
target = owner.getValueAt(row, column);
|
||||
mcopy.setVisible(true);
|
||||
} else mcopy.setVisible(false);
|
||||
Dimension d= new Dimension(Math.max(mcopy.getWidth(), 300),100);
|
||||
value_view.setVisible(true);
|
||||
value_view.setText(target.toString());
|
||||
value_scroll.setPreferredSize(d);
|
||||
} else {
|
||||
mcopy.setVisible(false);
|
||||
value_view.setVisible(false);
|
||||
}
|
||||
super.CheckElementsVisibility();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,7 +29,7 @@ public class TestsForm extends DataSetControlForm<Test> {
|
||||
new ColumnInfo<Test>("описание") {
|
||||
@Override
|
||||
public Object getFieldAt(Test object) {
|
||||
return object.extended_description.replace("\n","→");
|
||||
return object.extended_description;//.replace("\n","→");
|
||||
}
|
||||
@Override
|
||||
public Class getRendererClass() {
|
||||
|
||||
Reference in New Issue
Block a user