Java EclipsePropertySheetPage-它能支持多行属性吗?
我想使用EclipseAdvancedPropertySection,它使用PropertySheetPage来显示和编辑属性,但是我的一些属性 是多行的(例如描述) 问题: 我无法获取PropertySheetPage以显示多行属性。 它将它们显示为一行,如下所示: 我尝试使用WrapTextPropertyDescriptor而不是TextPropertyDescriptor,但似乎没有帮助Java EclipsePropertySheetPage-它能支持多行属性吗?,java,eclipse,view,properties,line,Java,Eclipse,View,Properties,Line,我想使用EclipseAdvancedPropertySection,它使用PropertySheetPage来显示和编辑属性,但是我的一些属性 是多行的(例如描述) 问题: 我无法获取PropertySheetPage以显示多行属性。 它将它们显示为一行,如下所示: 我尝试使用WrapTextPropertyDescriptor而不是TextPropertyDescriptor,但似乎没有帮助 是否有一种使用AdvancedPropertySection(PropertySheetPage)
是否有一种使用AdvancedPropertySection(PropertySheetPage)显示多行属性的方法?如果您遵循本教程,这很简单: 您可以创建自己的自定义属性描述符 我已经这样解决了这个问题:
import org.apache.directory.studio.ldapbrowser.common.dialogs.TextDialog;
import org.eclipse.jface.viewers.DialogCellEditor;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
public class TextDialogCellEditor extends DialogCellEditor{
protected TextDialogCellEditor(Composite parent) {
super(parent);
}
@Override
protected Object openDialogBox(Control cellEditorWindow) {
TextDialog textDialog = new TextDialog(cellEditorWindow.getShell(),(String)getValue());
textDialog.open();
if(textDialog.getReturnCode()==textDialog.OK){
setValue(textDialog.getText());
}
return getValue();
}
}
这是您自己的描述:
import org.eclipse.jface.viewers.CellEditor;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.ui.views.properties.PropertyDescriptor;
public class TextDataPropertyDescriptor extends PropertyDescriptor{
public TextDataPropertyDescriptor(Object id, String displayName) {
super(id, displayName);
// TODO Auto-generated constructor stub
}
@Override
public CellEditor createPropertyEditor(Composite parent) {
CellEditor editor = new TextDialogCellEditor(parent);
if (getValidator() != null)
editor.setValidator(getValidator());
return editor;
}
}
使用:
使用导入org.apache.directory.studio.ldapbrowser.common.dialogs.TextDialog代码>,您可以使用该插件更新eclipse,
只更新包,
org.apache.directory.studio.ldapbrowser.common代码>如果您遵循本教程,这很简单:
您可以创建自己的自定义属性描述符
我已经这样解决了这个问题:
import org.apache.directory.studio.ldapbrowser.common.dialogs.TextDialog;
import org.eclipse.jface.viewers.DialogCellEditor;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
public class TextDialogCellEditor extends DialogCellEditor{
protected TextDialogCellEditor(Composite parent) {
super(parent);
}
@Override
protected Object openDialogBox(Control cellEditorWindow) {
TextDialog textDialog = new TextDialog(cellEditorWindow.getShell(),(String)getValue());
textDialog.open();
if(textDialog.getReturnCode()==textDialog.OK){
setValue(textDialog.getText());
}
return getValue();
}
}
这是您自己的描述:
import org.eclipse.jface.viewers.CellEditor;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.ui.views.properties.PropertyDescriptor;
public class TextDataPropertyDescriptor extends PropertyDescriptor{
public TextDataPropertyDescriptor(Object id, String displayName) {
super(id, displayName);
// TODO Auto-generated constructor stub
}
@Override
public CellEditor createPropertyEditor(Composite parent) {
CellEditor editor = new TextDialogCellEditor(parent);
if (getValidator() != null)
editor.setValidator(getValidator());
return editor;
}
}
使用:
使用导入org.apache.directory.studio.ldapbrowser.common.dialogs.TextDialog代码>,您可以使用该插件更新eclipse,
只更新包,org.apache.directory.studio.ldapbrowser.common代码>在此处复制扩展AdvancedPropertySection的类的代码…在此处复制扩展AdvancedPropertySection的类的代码。。。