1

AddAction というコールバック アクションがあります。AddAction が押されたら、TopComponent のすべてのコンポーネントを有効にし、ツールバーの他のいくつかのアクションを無効にします。次に、SaveAction を押すと、データがデータベースに保存され、他のアクションが有効になり、TC のすべてのコンポーネントが無効になります。

現在、すべてのコンポーネントを有効にする AddAction セットアップがありますが、他のアクションも無効にする方法がわかりません。

AddAction

@ActionID(
    category = "1",
id = "com.waudware.Actions.AddAction")
@ActionRegistration(
    iconBase = "com/waudware/Actions/Icons/add.png",
    displayName = "#CTL_AddAction",
    key = "AddAction")
@ActionReferences({
    @ActionReference(path = "Menu/Record", position = 3333),
    @ActionReference(path = "Toolbars/AddEditDelete", position = 100)
})
@Messages("CTL_AddAction=Add")
public final class EditAction implements ActionListener {

    @Override
    public void actionPerformed(ActionEvent e) {
    }
}

トップコンポーネント

public RouteTopComponent() {
        initComponents();
        setName(Bundle.CTL_RouteTopComponent());
        setToolTipText(Bundle.HINT_RouteTopComponent());

        getActionMap().put("AddAction", new AbstractAction(){
            @Override
            public void actionPerformed(ActionEvent e) {
                addRoute(true);
            }
        });
}

private void addRoute(boolean add) {
        txtRoute.setEnabled(add);
    }
4

2 に答える 2

2
于 2013-01-17T21:48:13.260 に答える