Java
設定ファイル要るな→Propertiesクラス便利→うわ順番めちゃくちゃやん →作ろう import java.io.*; import java.util.ArrayList; /** * * @author standstonecraft */ public class MyProperties { private ArrayList<String> keyList; private ArrayList<String> valList; pub</string></string>…
コンフィグファイルが必要になる機会は結構多いですよね 特に記憶する内容がなくても、ウィンドウの位置や大きさは保持したいものです テキストを入出力するクラスはあるし行単位で読みこめばそう難しいことでもないのですが、 設定ファイルを操作するProper…
Windowsでは、ファイルのパスを「C:\hoge\bar」などのように表します しかし他のOSでは「/hoge/bar」などのように表します JavaのいいところはどんなOSでも動くところ、でも気をつけないとこの記号の違いでファイル操作がうまくいきません Windows限定のソフ…
前回公開したクラスは何もいじらない状態では数字+記号2つしか表現できません しかしラジカセ(化石)などでは"no disc"のようなメッセージが表示されます 7セグメントには一応アルファベットの対応が決められているんですが、相当読みづらいです とりあえず自…
前回画像で紹介した、数字をデジタルに表示するためのライブラリを作りました デジタル時計とかストップウォッチなんかを作るときに若干見栄えが良くなるので使って見て欲しいです(明らかな検索用) プログラム例兼、簡単なレイアウト見本としてサンプルプロ…
GUIを作っている時、画像を生成したり表示したりしたいときがあります ペイントソフトが代表例として挙げられますが、画像を描くのが主目的でなくてもあると便利な場合はあります 今「あります」とタイプしながら何も思い浮かばなかったので自分の使用例をあ…
ネットの各種サービスのアカウント登録で、郵便番号を求められることがあります そのとき郵便番号の前半部と後半部でフィールドが分かれていることってありますよね 123-4567を入力する時、123、次のフィールドをクリック(またはtabキー)4567… 面倒です。ロ…
javaでソフトキーボードを作る場合、JButtonが最低でも26個必要になります しかし僕のようなニワカプログラマがNetBeansでイベント処理しようとすると、〜〜actionPerformedを26個作りがちです ですがこれは完全に無駄な作業です実際にどうすればいいかとい…
Javaでエニグマ暗号機作ってみました 参考にしたのはサイモン・シン著「暗号解読」です エニグマ暗号とはなにかというと、暗号の発祥から話さなければならないのですが、 文章力がないので流れを書くと アルファベットを数文字ずらすシーザー暗号(abc⇒BCD)や…
煩雑な処理とか流用を考えて作ったものを別クラスに書くのは普通のことなんですが、他のプロジェクトで使うときどうすればよいかわからずわざわざコピーしてました でもこれだと書き換えた時もう一方に反映されないじゃないですか これをどうにかできないか…
JTableにはもともとキーストロークによる動作が決まっています(Oracle Technology Network for Java Developers | Oracle Technology Network | Oracle) ですがエンターを押した時表を更新したいとか、タブキーを押した時に右に行くのではなく下に行きたいと…
Javadocというのはプログラムの説明書みたいなものです 過去のプログラム例にも度々でてきてるんですが /** * 本のリストの特定の位置に本を追加します * @param index 位置 * @param name 書名 * @param volume 巻数 * @see #add(java.lang.String, int) */…
ポップアップメニューって右クリックだけじゃなくてキーボードからも開けますよね キーボード右下のそれっぽいキーです キーが押されたイベントを作ってそこで押されたキーがそのキーだったかを判別して実行します private void tableKeyPressed(java.awt.ev…
普段使うソフトのほとんどにポップアップメニュー(右クリックメニュー)が実装されていますね これがあるだけで機能的なソフトに見えてきます netbeansのデザイン画面で、パレットにポップアップメニューがあるから簡単に追加できると思ってたのですがいまい…
表で情報を整理する場合ソートは重要な要素ですが、名前順では物足りないことがあります。もちろん項目にタグを付ける感覚で(一般コミック)[小梅けいと]*1狼と香辛料*2というふうにすれば名前ソートで整然と並ぶんでしょうが、ユーザーに熱心さやアングラ*3…
すでに文字列が入っているJTextField(JTextAreaでもいいけど)を編集するとき、クリックした時全文が選択状態(青く反転表示)になってくれると、0から書き直すときバックスペース長押ししなくてすみます。バックスペースを1,2秒長押する手間を数分かけて取り除…
パソコンのエクスプローラとかもろもろのソフトで表の列ヘッダ(タイトル部分)をクリックすると名前順とかで並べ替えてくれますよね この機能はJavaで表を設置しただけでは有効になってません この一文を追加する必要があります(追記:書かなくてもプロパティ…
やっぱり表をいじるときは、セルまたは行を選択した時にどこかのテキストフィールドに表示して、それを書き換えて編集ボタンをクリックすると表の内容が変わるっていうのがかっこいいですよね そこで普通ならデザイン画面でおもむろに表を右クリックして「セ…
テキストフィールドに特定の文字の入力を禁止するのはググる限りイベントをどうのリスナーがどうのと面倒くさそうです しかし、文字を入力したからには決定ボタンを押すとか次にフォーカスを移すとかいう行動があるはずで、これらは僕でもイベントを拾えます…
では出力です ※こちらも書き換えました。エンコード方式を指定できるようになってます public class BufferedWriterPlus extends BufferedWriter { public static String ISO2022JP = "ISO2022JP"; public static String SJIS = "SJIS"; public static Strin…
ちょっと表から離れて大好物のファイル入出力を3行のコードで一括でできるように拡張しました 拡張というのは継承クラスでするわけなんですが今日勉強したので完全理解はしてません。動けばいいや(禁句) オブジェクト指向初めてすぐって別ファイルに物を書く…
では次にこのリストをもとに表を書いていきます public bookList book = new bookList(); //入力したりファイルから読み込んだりして本のリストbookを作る まず表にしたいリストを作ったらこれを実行させます private void writeTable() { dtm = (DefaultTab…
表を楽に操作するために数回に渡り下準備の変数づくりから表を操作するメソッドまでを作ってみます というか細切れでかくのが面倒だしコピペしづらいので完成品を貼ろう ちなみに今回は昨日の「所有してる本の名前と巻数を管理する」というのを例にやってい…
俺得。なにか実用的なソフトを作ろうと思うと表が絶対出てくるんですよね 表というのはjTable。表にキーボードから打ち込んだセルの値を取ってくるまではググらなくても誰でもできるのだけどそれ以外が詰みやすい気がします というのもテーブルモデルとjTabl…
手始めに、ググれば一瞬なんだけど手始めに コピペで動くはずなので下の解説は読む価値はない まず入力※ファイルのエンコード方式を指定する方法はファイルを一気に入力で書いてますのでそちらへ private void readFile(File file) throws FileNotFoundExcep…