java - Program shows an empty window -
this question has answer here:
- jlabel doesn't show up 4 answers
i have started program in java , sometimes, when run or debug it, shows empty white window. have no idea why, redebug , shows window correctly. btw, has nothing mysql connect void @ end.
here code:
package com.hinx.client; import java.awt.*; import java.awt.event.actionevent; import java.awt.event.actionlistener; import javax.swing.*; import java.sql.*; public class main { public static void main(string [] args) { createwindow(); } static void createwindow() { //create panel jpanel content = new jpanel(); content.setlayout(null); //build frame jframe frame = new jframe("hinx - marketplace apps - client alpha_0.0.1"); frame.setdefaultcloseoperation(jframe.exit_on_close); frame.setsize(700, 233); frame.setresizable(false); frame.setlocationrelativeto(null); frame.add(content); frame.setvisible(true); //create username label jlabel username = new jlabel("username:"); username.setfont(new font("arial", font.bold, 15)); username.setforeground(color.white); username.setbounds(34, 8, 100, 50); //create password label jlabel password = new jlabel("password:"); password.setfont(new font("arial", font.bold, 15)); password.setforeground(color.white); password.setbounds(36, 85, 100, 50); //create username field jtextfield usernamet = new jtextfield(20); usernamet.setbounds(12, 50, 125, 30); usernamet.setborder(javax.swing.borderfactory.createemptyborder()); //create password field jtextfield passwordt = new jtextfield(20); passwordt.setbounds(12, 125, 125, 30); passwordt.setborder(javax.swing.borderfactory.createemptyborder()); //add login button jbutton login = new jbutton("login"); login.setbounds(0, 175, 150, 30); login.addactionlistener(new actionlistener(){ public void actionperformed(actionevent e) { } }); //create login panel jpanel loginpanel = new jpanel(); loginpanel.setlayout(null); loginpanel.setbounds(0, 0, 150, 400); loginpanel.setbackground(color.gray); //add items loginpanel loginpanel.add(username); loginpanel.add(password); loginpanel.add(usernamet); loginpanel.add(passwordt); loginpanel.add(login); //add items content panel content.add(loginpanel); } protected void connect() { string driver = "com.mysql.jdbc.driver"; string dbadress = ""; string dbname = ""; string username = ""; string password = ""; try { class.forname(driver).newinstance(); connection conn = drivermanager.getconnection(dbadress+dbname, username,password); statement st = conn.createstatement(); } catch (exception e) { e.printstacktrace(); } } }
frame.setvisible(true); make last statement, after add components jframe.
also, best practice swing-related code in gui-thread (edt):
public static void main(string[] args) { swingutilities.invokelater(new runnable() { @override public void run() { createwindow(); } }); }
Comments
Post a Comment