0

私はRCPの初心者ですが、今日RCPアプリケーションの構築を開始しました。エディターのボタン、コンボボックス、チェックボックスなどのGUIコンポーネントが必要です。拡張機能にエディターを追加し、そのクラスを作成することができました。 creatPartControlでラベルを作成するコードを記述しましたが、機能しません。黒いウィンドウが表示されます。このようなパースペクティブでエディターを追加する必要があります。

layout.addStandaloneView(Editor.id, true, IPageLayout.TOP,0.7f,
                layout.getEditorArea());
layout.addStandaloneView(View.ID, true, IPageLayout.BOTTOM,0.4f,
                layout.getEditorArea());

この問題の解決にご協力ください。可能であれば、エディタを追加してラベルとボタンを作成する方法などを教えてください。の私のEditor.javaコンテンツの事前コードにご協力いただきありがとうございますcreatePartControl()

parent.setLayout(new GridLayout());
Button b=new Button(parent,SWT.TOGGLE);

b.setText("Hello ");
Label label1 = new Label(parent, SWT.NONE);
label1.setText("First Name");


package com.hello;

import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Label;
import org.eclipse.ui.IEditorInput;
import org.eclipse.ui.IEditorSite;
import org.eclipse.ui.PartInitException;
import org.eclipse.ui.part.EditorPart;

public class Editor extends EditorPart {
    public static final String ID = "TestApplication.editor3";

    public Editor() {
        // TODO Auto-generated constructor stub
    }

    @Override
    public void doSave(IProgressMonitor monitor) {
        // TODO Auto-generated method stub

    }

    @Override
    public void doSaveAs() {
        // TODO Auto-generated method stub

    }

    @Override
    public void init(IEditorSite site, IEditorInput input)
            throws PartInitException {
        // TODO Auto-generated method stub

    }

    @Override
    public boolean isDirty() {
        // TODO Auto-generated method stub
        return false;
    }

    @Override
    public boolean isSaveAsAllowed() {
        // TODO Auto-generated method stub
        return false;
    }

    @Override
    public void createPartControl(Composite parent) {
        Label label = new Label(parent, SWT.NONE);
        label.setText("sssssss");
    }

    @Override
    public void setFocus() {
        // TODO Auto-generated method stub

    }

}
4

2 に答える 2

0

Eclipseエディターで作業してから数年になります。これがエディターのスクリーンキャプチャで、ボタンを追加する以上のことをしたことがわかります。

COBOLエディター

  • Viewerクラスを拡張して、エディターのGUIを作成しました。
  • EditorPartクラスを拡張して、エディターの機能を作成しました。

私が構築していた種類のエディターのために、独自のバージョンのCanvasと独自のバージョンのIDocumentを作成する必要がありました。

于 2013-01-03T15:08:37.210 に答える
0

エディターを正しく初期化していないため、エディターを開くときに問題が発生します。以下のようにメソッドを入力してinit()、これが役立つかどうかを確認してください。

@Override
public void init(IEditorSite site, IEditorInput input)
        throws PartInitException {
    setSite(site);
    setInput(input);
}
于 2013-01-03T15:29:06.157 に答える