プログラムの状況と期待が何かをつかみ損ねているかも知れませんが、単なるJava(swing)のGUIの問題として捉え「自由なテキストを入力させる代わりに、いくつかの選択肢から選ばせたい」のであれば・・・
JTextFieldではなくJComboBoxによる選択でよいなら下記のリファレンスに記載されているサンプルの「ユーザーにStringの選択を求めるダイアログの表示 」が参考になると思います。
https://docs.oracle.com/javase/jp/8/docs/api/javax/swing/JOptionPane.html
しかしJComboBoxではなくRadioButtonでの選択にしたいならshowInputDialogではなく他のメソッドで代用することになると思います。
message引数はObject型なのですが単純な文字列メッセージ以外にも任意のコンポーネントを指定できますので、ラジオボタンを含むようなコンポーネント階層を作成し渡してやるとお望みのようなことができます。
使うメソッドは、キャンセルする必要がないならshowMessageDialog、OK/キャンセルを選択可能にするならshowConfirmDialogを用いればよいと思います。
追記:質問コメントによりラジオボックスにしたい意図がわかりました。そういうことですと上記の回答にような方針でよいと思います。簡単な例を書いてみました。
java
1static String getUserSelection(JComponent dialogOwner, String dialogTitle, String messageLabel, String[] possibleValues) {
2 ButtonGroup bg = new ButtonGroup();
3 Box box = Box.createVerticalBox();
4 box.add(new JLabel(messageLabel));
5 for (String value : possibleValues) {
6 JRadioButton button = new JRadioButton(value);
7 button.setActionCommand(value);
8 bg.add(button);
9 box.add(button);
10 }
11 bg.setSelected(bg.getElements().nextElement().getModel(), true);
12
13 int response = JOptionPane.showConfirmDialog(dialogOwner,
14 box, // message
15 dialogTitle, // title
16 JOptionPane.OK_CANCEL_OPTION,
17 JOptionPane.INFORMATION_MESSAGE);
18 boolean approved = response == JOptionPane.OK_OPTION;
19 return approved ? bg.getSelection().getActionCommand() : null;
20}
21
22...
23
24String selection = getUserSelection(null, "Input", "choose one",
25 new String[] {"one", "two", "three"});
26System.out.println(selection);
この例では「あり得る選択肢をStringの配列で与えユーザーの選択結果を返すメソッド」としています。初期選択アイテムは選択肢の先頭としており、OKを押したら選択されている項目の文字列、cancelならnullを返してますが初期選択肢を「なし」にしたり「OK,Cancel」ではなく「OK」のみするなど必要に応じて少しの変更で対応できると思います。