Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Hallo bin neu hier und habe da mal eine Frage!
Ich schreibe gerade an einem Zeichenprogramm, der Kreise, Rechtecke etc zeichnen soll.
Ich kann zwar Kreise zeichnen, aber ich würde gerne das man den Radius in einem neuen Fenster (oder irgendwo im Fenster) eingeben kann.
Weiß leider nicht wie ich das anstellen soll, habt ihr irgendwelche ideen?
[schild=1]Lesen bildet![/schild]
Es hilft, wenn man die Links, die man als Antwort gepostet bekommt, auch durchliest. Wenn Du natürlich noch ein Anleitung brauchst, wie man dort dann auf DialogDemo.java klickt......
Ich habe es ja gelesen. Ich bräuchte eher was anderes. Kann man das auch in das Fenster schon reinpacken? Also nicht das ein neues Fenster kommt, sondern das man das schon im fenster eintippen kann.
Dann mußt Du das auch hinschreiben.
Aber je nachdem was Du willst verändert es Dir die Fenstergröße oder die Zeichenfläche, da ein internes Element ja auch Platz braucht.
Oder soll es ein Fenster im Fenster sein? Beschreibe mal genauer, was Du eigentlich möchtest.
Und muß es eigentlich unbedingt ein Fenster/Popup/internes Element sein? Warum machst Du es nicht mit Maussteuerung, wie jedes normale Grafikprogramm?
Das mag sein, aber wir wissen halt nicht, was der TO wirklich machen will. Da er offensichtlich noch Anfänger ist, sollte es erst mal nicht auf 2-stellige Genauigkeit ankommen.
Wie dem auch sei, noch eine Frage, die Hansi.85 uns beantworten könnte.
Ich habe das jetzt doch mit JOptionPane gemacht und alles läuft, aber das problem ist, dass das Fenster immer öffnet, wenn ich ein Kreis zeichnen will. Habe versucht die Abfrage vom Radius direkt beim Buttonklick zu setzten, aber wenn ich das mache, kann ich den Radius nicht benutzen.
Ich hatte das erst auch mit der Maussteuerung, aber damit kann man keine genauen werte einstellen.
hatte das erst so:
Code:
public void mouseClicked(MouseEvent e) {
if (action_state == State.DRAW_RUND) {
startPunkt = new Punkt2d(e.getX(),e.getY());
String radius_s = JOptionPane.showInputDialog(zf, "Geben Sie den Radius der Stuetze an");
double radius = Double.parseDouble(radius_s);
model.addGeomObject(
new StuetzeRund(startPunkt,radius,255));
zf.repaint();
}
}
aber wenn ich das so mache, dann fragt er mich immer wieder nach dem Radius. Wollte es deshalb in actionPerformed packen. Kann aber die breite dann in MouseClicked nicht benutzen.
Code:
public void actionPerformed(ActionEvent e) {
if (e.getActionCommand().equals("drawRund")){
action_state = State.DRAW_RUND;
String radius_s = JOptionPane.showInputDialog(zf, "Geben Sie den Radius der Stütze an");
double radius = Double.parseDouble(radius_s);
}
}
kann man das überhaupt so machen oder habt ihr vllt eine andere idee?