I am making a new form using JavaFX. I need a Pop up text field within the form to add new category -


adding new category within same window

i making new form using javafx add new item inventory, if need add new category item form, must able within frame popping new text field shown in red box. there way same in javafx?

two different approaches. use textfield , seteditable(false). make textfield's seteditable(true) after double-click on textfeild. first half of code shows approach. option use label. when label double-clicked, hide label , show textfield or textarea. type data 1 of these nodes , when enter pressed, remove textfield or textarea , show text in label. second half of code show approach.

import javafx.application.application; import javafx.event.eventhandler; import javafx.scene.scene; import javafx.scene.control.label; import javafx.scene.control.radiobutton; import javafx.scene.control.textarea; import javafx.scene.control.textfield; import javafx.scene.input.mousebutton; import javafx.scene.input.mouseevent; import javafx.scene.layout.hbox; import javafx.scene.layout.priority; import javafx.scene.layout.stackpane; import javafx.scene.layout.vbox; import javafx.stage.stage;  /**  *  * @author blj0011  */ public class javafxapplication7 extends application {      @override     public void start(stage primarystage) {                 vbox root = new vbox();         stackpane stackpane = new stackpane();          textfield textfield = new textfield("text");         textfield.seteditable(false);//set editiable false          textfield.setonmouseclicked(new eventhandler<mouseevent>() {             @override             public void handle(mouseevent mouseevent) {                 if(mouseevent.getbutton().equals(mousebutton.primary)){                     if(mouseevent.getclickcount() == 2){                         textfield.seteditable(true);//on double click set editable true                          textfield.setonkeypressed(event ->{                             if(event.getcode().tostring().equals("enter"))                             {                                 textfield.seteditable(false);//on enter set editable false                             }                         });                     }                 }             }         });          label label = new label("test");         vbox.setvgrow(label, priority.always);         label.wraptextproperty().set(true);          label.setonmouseclicked(new eventhandler<mouseevent>() {             @override             public void handle(mouseevent mouseevent) {                 if(mouseevent.getbutton().equals(mousebutton.primary)){                     if(mouseevent.getclickcount() == 2){                         label.setvisible(false);                         textarea textarea = new textarea(label.gettext());                         textarea.setprefheight(label.getheight() + 10);                         stackpane.getchildren().add(textarea);                          textarea.setonkeypressed(event ->{                             system.out.println(event.getcode());                             if(event.getcode().tostring().equals("enter"))                             {                                 label.settext(textarea.gettext());                                 stackpane.getchildren().remove(textarea);                                 label.setvisible(true);                                                            }                         });                     }                 }             }         });          stackpane.getchildren().add(label);             root.getchildren().add(textfield);         root.getchildren().add(stackpane);          scene scene = new scene(root, 300, 250);          primarystage.settitle("hello world!");         primarystage.setscene(scene);         primarystage.show();     }      /**      * @param args command line arguments      */     public static void main(string[] args) {         launch(args);     }         } 

Comments

Popular posts from this blog

What is happening when Matlab is starting a "parallel pool"? -

angular - DownloadURL return null in below code -

php - Cannot override Laravel Spark authentication with own implementation -