AWT を使用して、Java でメモ帳アプリケーションを設計しています。今、MenuBar と MenuItems を作成しましたが、取得できないのは、TextArea に何も書いていない場合のように、特定の MenuItem を非アクティブ化する方法です。 、および元に戻すオプションは非アクティブのままです。そのようなことをするためのJavaの方法はありますか?SwingではなくAWTを使用してこれを行っています。
質問する
407 次
1 に答える
0
試行錯誤とサーフィンの末、答えを得ました。それらを初期化する間、コンストラクター内では、初期値を「false」のままにします。したがって、texteditor が開いたとき、画面には何も表示されません。そのため、それらは無効に表示され、TextArea オブジェクトを KeyListener に登録すると、その menuItems を有効にするジョブが実行されます。;)
constructor()
{
undo=new MenuItem("Undo",new MenuShortcut(90));
edit.add(undo);
un.setEnabled(false);
cut=new MenuItem("Cut",new MenuShortcut(88));
edit.add(cut);
cut.setEnabled(false);
copy=new MenuItem("Copy",new MenuShortcut(67));
edit.add(copy);
copy.setEnabled(false);
paste=new MenuItem("Paste",new MenuShortcut(86));
ed.add(paste);
selectAll=new MenuItem("Select All",new MenuShortcut(65));
ed.add(selectAll);
selectAll.setEnabled(false);
textArea.addKeyListener();
}
public void keyTyped(KeyEvent arg0)
{
if(textArea.getText()!=null)
{
cut.setEnabled(true);
copy.setEnabled(true);
undo.setEnabled(true);
selectAll.setEnabled(true);
find.setEnabled(true);
}
}
于 2013-11-16T22:14:05.910 に答える