El Día de San Valentín llegará pronto, y no importa cuán desconocidos sean las personas, tienen que expresar sus sentimientos a sus novias. Como programador, debemos usar naturalmente nuestro propio camino cuando mostramos nuestro amor.
Aquí subiré un simple código de swing Java que le escribí a mi novia el día de San Valentín este año. Define principalmente un cuadro de diálogo para que mi novia elija si le gusta ella misma. Si ella elige "sí", todos serán felices. Si ella quiere elegir "No", Hum. . . Echa un vistazo a la captura de pantalla.
Renderización de código:
A continuación, no hablaré sin sentido, solo sube el código. La nueva versión se ha cargado, y todos también son bienvenidos para descargar y mejorar el código en mi GitHub (haga clic aquí para ir a GitHub).
Además, debido a que este código fue escrito el día de San Valentín en ese momento, y la información en la barra de título del cuadro de diálogo también está relacionada con el Día de San Valentín. Si desea usarlo en otros festivales, solo necesita modificar algunas cuerdas. He escrito anotaciones chinas en los lugares donde necesito modificar, para que pueda encontrarlo fácilmente. Pero como escribí en los comentarios, este programa es como máximo una pequeña broma entre ustedes dos. Si quieres esta noche, el verdadero regalo debe estar preparado :)
Paquete Gift_Package; import java.awt.container; import java.awt.font; import java.awt.toolkit; import java.awt.event.mousevent; import java.awt.event.mouselistener; import java.awt.event.windowevent; import java.awt.event.windowlistener; import javax.swing.jbutton; import javax.swing.jdialog; import javax.swing.jframe; import javax.swing.jlabel; import javax.swing.swingconstants; import javax.swing.windowconstants; /** * Un código divertido para tu amante, que crea un marco que le permite elegir * si te ama. Si él/él elige 'sí', todo normal, pero * si intenta elegir 'no', algo interesante sucedería. Primero, * el botón 'No' cambiaría su posición, parece que intenta escapar * de que se haga clic. Después de un par de rondas, si él/él todavía quiere hacer clic en el botón * 'No', el botón 'No' y el botón 'Sí' intercambiarán su posición. * Además, la ventana no se cerrará hasta que se haga clic en el botón 'Sí'. * * Para usar este código, asegúrese de que su computadora haya instalado el JRE. * * Tenga en cuenta que este código es solo un poco de broma, no lo use como un regalo de día * del día de Valentin real, si desea ser colocado en el Día de Valentin, use Rose, Wine y Fancy * Restaurant, si desea mantener el amor de su compañero, use su corazón. * * @Author Rainman_ZJD * @Version Initialt versión, 2016.3.20 */ public class HappyValentinsday extiende Jframe {Private Static final Long SerialVersionUid = 1l; Etiqueta privada Jlabel; JBUTTON PRIVADO BOTY1; JButton privado Button2; diálogo privado jdialog1; privado int entrecount = 0; Elección booleana privada de boolean = false; public static final int screenwidth = (int) toolkit.getdefaultToolkit (). getsCreensize (). getWidth (); public static final int ScreenHeight = (int) Toolkit.getDefaultToolkit (). GetsCreensize (). Getheight (); public happyvalentinsday () {etiqueta = new JLabel ("Hola, mi nombre es Rainman_ZJD, te amo, ¿me amas?", SwingConstants.center); // modificar botón1 = nuevo JButton ("¡No, no lo hago!"); // botón 1 botón2 = nuevo JButton ("¡Sí, lo hago!"); // Diálogo 2 del botón1 = new JDialog (this); // Cree un nuevo cuadro de diálogo y configure la ventana principal en el formulario actual WindowInitial (); setwindowlistener (); } // Constructor public happyValentinsday (String labelTxt, string bt1txt, string bt2txt) {Label = new JLabel (labelTxt, swingconstants.center); botón1 = nuevo JButton (BT1TXT); botón2 = nuevo JButton (BT2TXT); dialog1 = new JDialog (this); WindowInitial (); elegirflag = verdadero; setDefaultCloseOperation (WindowsConstants.Dispose_on_Close); setVisible (verdadero); } // constructor_string/ *** Inicialización de formulario, usando el diseño absoluto*/ private void windowInitial () {setDialog (diálogo1, "¡Awesome!", "Conocerte es lo afortunado en mi vida!"); // modificar etiqueta Label.setBounds (0, 30, 480, 20); /*** Agregue un oyente de eventos de mouse al botón 1 en la clase interna anónima. Cuando el mouse entra en el botón 1, de repente cambiará su posición*/ botón1.addmouseListener (new MouseListener () {@Override public void Mousereleaded (MouseEvent E) {return;} @Override public void Void void (mouseEvent E) {return;} @Override public Void void mOUSeeExited (mOUSEEEVEVEVENT) public void mouseentered (MouseEvent E) {Switch (EnterCount) { 2: Button1.SetBounds (155, 60, 110, 30); Button2.SetBounds (75, 110, 30); Botón1.SetBounds (75, 110, 110, 30); Happyvalentinsday.this.rePaint (); EnterCount = 0; romper; } // seitch_enterCount} // mouseentered @Override public void mouseClicked (mouseEvent e) {dialog1.setVisible (true); setDefaultCloseOperation (disposición_on_close); } // mouseClicked}); // mouselistener Button1.setBounds (70, 110, 110, 30); Button1.setFont (nueva fuente ("", font.bold, 13)); / *** Agregue un oyente de eventos de mouse al botón 2 en la clase interna anónima, y el cuadro de diálogo se muestra cuando se presiona*/ Button2.AddMouseListener (new MouseListener () {@Override public void Mousereleded (mouseEvent e) {return;} @Override public void Mousepression (mouseEvent E) MouseExited (MouseEvent E) {return;} @Override Void MouseEndered (MouseEvent E) {return;} @Override public void mouseClicked (mouseEvent e) {dialog1.setVisible (true); MouseListener Button2.setBounds (310, 110, 110, 30); button2.setFont (nueva fuente ("", font.bold, 13)); Contenedor c = getContentPane (); C.SetLayout (NULL); C.Add (etiqueta); C.Add (Button1); C.Add (Button2); Settitle ("¡Feliz día de Valentin!"); // modificar setBounds (screenwidth/2-250, screenHeight/2-100, 500, 200); setResizable (falso); setDefaultCloseOperation (WindowsConstants.do_nothing_on_close); } // WindowInitial/ ** * Establecer propiedades de diálogo * @param diag * @param title * @param txt */ private void setdialog (jdialog diag, title de cadena, cadena txt) {jlabel diaglabel = new jlabel (txt, swingconstants.center); DiaGlabel.setFont (nueva fuente ("", fuente. Bolde, 17)); Diaglabel.setBounds (0, 40, 430, 20); JButton diagBut = new JButton ("confirmar"); diagbut.setFont (nueva fuente ("", font.bold, 14)); diagBut.setBounds (155, 100, 100, 30); diagBut.AddMouseListener (new MouseListener () {@Override public void MouserElimed (MouseEvent e) {return;} @Override public void MousePressed (MouseEvent e) {return;} @Override public void mouseExited (mousevent e) {return;} @Override pública Void Mouseentered (MoUSEEVEGENT E) {return;} @Override public void MouseClicked (MouseEvent E) {diag.dispose (); diag.settitle (título); diag.setBounds (screenwidth/2-225, ScreenHeight/2-100, 450, 200); diag.setLayout (nulo); diag.add (diagbut); diag.add (Diaglabel); } // setDialog/ *** Establezca la acción al hacer clic en el botón Cerrar de la ventana*/ private void setWindowlener () {this.addwindowlistener (new WindowsListener () {@Override public void Windowopened (WindowEvent e) {return;} @Override public Void Windowiconified (WindowEvent E) {return;} @override pública Vública Vública (Ventajero Ventana (Ventajero Ventajera e) {return;} @Override public void WindowDeActivated (WindowsEvent e) {return;} @Override public void WindowClosed (WindowsEvent e) {return;} @Override public void WindowActivated (WindowEvent e) {return;} @Override public {if (! ChoiceFlag) {String LABELTXT = "¿Es su elección predeterminada/" Sí, lo hago!/"?"; Happyvalentinsday (); myApp.setVisible (verdadero); } // main}/*happyvalentinsday*/ Lo anterior es todo el contenido de este artículo. Espero que sea útil para el estudio de todos. También espero que todos apoyen a Wulin.com y les deseen un feliz día de San Valentín.