Java実装単純計算機

1589 ワード

1概要Java AWT+Swing実現した簡易計算機で、機能は以下の通り.
  • 加減算対応
  • 小数演算対応
  • キーボード傍受
  • マウスモニター
  • 2効果のデモ
    3詳細
    3.1演算
    演算には、文字列式の値を計算するためにExpressionHandleの静的クラスが使用されます.
    実は演算は難しくなく、基本的な演算子と操作数の入スタック出スタック操作であり、詳しくは言わない.
    3.2 Base64
    アイコンはBase64処理されており、1つのピクチャリソースのみであり、かつピクチャを使用すると経路の問題が発生しやすいため、Java持参したBase64.Decoder処理を行い、decode後にバイト配列を生成してImageIconのパラメータとしてピクチャを正しく表示することができる.
    3.3フォント
    フォントはマイクロソフトの黒のフォントを使用し、デフォルトは太字、17番、反射取得setFontを使用して設定します.
    3.4マウスモニター
    コアはMouseListnermouseEnteredmouseExited入・出の背景色を設定するとともにmouseClickedレスポンスイベントを設定し、等号、退格およびEscを特判し、その他の直接該当入力ボックスに文字を追加すればよい.
    3.5キーボードリスニング
    コアはKeyListnerkeyPressedレスポンスイベントを設定し、リターング、イコール番号を特判するほか、コンビネーションキーにも注意が必要です.例えばShift+8は乗番を示していますが、keyEvent.isShiftDown判断shift押下するか否か、同時刻に対応するキー背景色を設定します.keyReleasedではボタン解放イベントを設定しており、ここでは設定背景として、あるボタンを設定していると思っていたが、キーボードイベントの応答が鈍いためか、ボタンが早すぎると「押し続ける」という仮象が現れるため、すべてのキーに応答した.
    3.6入力制限文字JTextField.setDocument()およびPlainDocumentを利用して、不正な入力があった場合にヒントを与え、対応する入力を無視するコアがinsertString()です.
    4ソース
  • Github
  • コードクラウド