のテキストはtxDiv0
、0 による除算が試行されたときに表示されるはずです。最初は非表示に設定されています。コードは正しく機能しますが、フレームの境界線を大きくするかのようにクリックすると、テキストのみが表示されます。フレームを文字通り1 ピクセル高くすると、フィールドが表示されます。
GUIbuilder によって生成されるコード:
private javax.swing.JTextField txDiv0;
...
txDiv0 = new javax.swing.JTextField();
...
txDiv0.setText("Division by 0 is undefined");
...
javax.swing.GroupLayout jPanel6Layout = new javax.swing.GroupLayout(jPanel6);
jPanel6.setLayout(jPanel6Layout);
jPanel6Layout.setHorizontalGroup(
jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel6Layout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(txDiv0, javax.swing.GroupLayout.PREFERRED_SIZE, 300, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap())
);
jPanel6Layout.setVerticalGroup(
jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel6Layout.createSequentialGroup()
.addGap(0, 11, Short.MAX_VALUE)
.addComponent(txDiv0, javax.swing.GroupLayout.PREFERRED_SIZE, 20, javax.swing.GroupLayout.PREFERRED_SIZE))
);
...
pack();
そして、ここに私がそれを表示させようとする方法があります:
txDiv0.setVisible(true);
System.out.println();
(println は、コード DID が実行されたことを示すためにあります。)
フレームの端をかろうじて動かさない限り、テキストフィールドは決して表示されません。