My Program:
Whenever I start the Program, the entire JLabel and JButton highlight with black shades, and I don't know how to fix this... It is weird that whenever I move the window to other monitor screen, the highlight disappears. But whenever I click the Labels or Buttons it reappears.
here's my code:
package main;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.border.EmptyBorder;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableRowSorter;
import function.Dashboard;
import tableButtons.TableActionCellEditor;
import tableButtons.TableActionCellRenderer;
import tableButtons.TableActionEvent;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JButton;
import javax.swing.JToggleButton;
import javax.swing.RowFilter;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;
import java.awt.event.ActionEvent;
import javax.swing.ImageIcon;
import java.awt.Toolkit;
import java.awt.Color;
import javax.swing.JTable;
import javax.swing.SwingConstants;
import java.awt.Font;
import java.awt.Image;
import javax.swing.JTextField;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
public class Main extends JFrame {
private static final long serialVersionUID = 1L;
public static JPanel contentPane;
public static JPanel panel;
private JTable table;
private JTextField txtModel;
private JTextField txtAffair;
private JTextField txtClient;
private JTextField txtPossession;
private JTextField txtFixed;
private JTextField txtStatus;
private JTextField txtSearch;
private DefaultTableModel model;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Main frame = new Main();
frame.setVisible(true);
frame.setLocationRelativeTo(null);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the frame.
*/
public Main() {
setIconImage(Toolkit.getDefaultToolkit().getImage(Main.class.getResource("/files/LightBackground.png")));
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 1020, 570);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
panel = new JPanel();
panel.setBackground(new Color(0, 0, 0, 0));
panel.setBounds(165, 6, 849, 530);
contentPane.add(panel);
panel.setLayout(null);
table = new JTable();
table.setShowVerticalLines(false);
table.setBounds(6, 31, 837, 333);
table.setSelectionBackground(Color.LIGHT_GRAY);
Connection connection = null;
Statement statement = null;
ResultSet resultset = null;
try {
connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/inventory", "root", "rlawjdwns7924!");
statement = connection.createStatement();
String query = "select * from Material";
resultset = statement.executeQuery(query);
ResultSetMetaData rsmd = resultset.getMetaData();
model = (DefaultTableModel) table.getModel();
int cols = rsmd.getColumnCount();
String[] colName = {"MODEL", "AFFAIR", "CLIENT", "POSSESSION", "FIXED", "STATUS", "ACTION"};
model.setColumnIdentifiers(colName);
for (int i = 0; i < cols; i++) {
String MODEL, AFFAIR, CLIENT, POSSESSION, STATUS;
String FIXED;
while(resultset.next()) {
MODEL=resultset.getString(1);
AFFAIR=resultset.getString(2);
CLIENT=resultset.getString(3);
POSSESSION=resultset.getString(4);
FIXED=resultset.getString(5);
STATUS=resultset.getString(6);
String[] row = { MODEL, AFFAIR, CLIENT, POSSESSION, FIXED, STATUS};
model.addRow(row);
}
statement.close();
connection.close();
}
} catch (SQLException sqlexception) {
sqlexception.printStackTrace();
}
TableActionEvent event = new TableActionEvent() {
@Override
public void onEdit(int row) {
System.out.println("Edit row : " + row);
}
@Override
public void onDelete(int row) {
System.out.println("Delete row : " + row);
if (table.isEditing()) {
table.getCellEditor().stopCellEditing();
}
DefaultTableModel model = (DefaultTableModel) table.getModel();
model.removeRow(row);
}
@Override
public void onView(int row) {
System.out.println("View row : " + row);
}
};
table.getColumnModel().getColumn(6).setCellRenderer(new TableActionCellRenderer());
table.setRowHeight(40);
table.getColumnModel().getColumn(6).setCellEditor(new TableActionCellEditor(event));
JScrollPane scrollPane = new JScrollPane();
scrollPane.setBounds(6, 31, 837, 333);
scrollPane.setViewportView(table);
panel.add(scrollPane);
JLabel lblMaterialTitle = new JLabel("Materials");
lblMaterialTitle.setFont(new Font(".AppleSystemUIFont", Font.PLAIN, 15));
lblMaterialTitle.setHorizontalAlignment(SwingConstants.CENTER);
lblMaterialTitle.setBounds(375, 6, 99, 24);
panel.add(lblMaterialTitle);
txtModel = new JTextField();
txtModel.setBounds(6, 386, 200, 40);
panel.add(txtModel);
txtModel.setColumns(10);
txtAffair = new JTextField();
txtAffair.setColumns(10);
txtAffair.setBounds(6, 438, 200, 40);
panel.add(txtAffair);
JButton btnAdd = new JButton("");
btnAdd.addMouseListener(new MouseAdapter() {
@Override
public void mouseReleased(MouseEvent arg0) {
btnAdd.setBackground(null);;
}
});
btnAdd.setIcon(new ImageIcon(Main.class.getResource("/files/add.png")));
btnAdd.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
}
});
btnAdd.setBounds(450, 380, 50, 70);
btnAdd.setOpaque(false);
btnAdd.setContentAreaFilled(false);
btnAdd.setBorderPainted(false);
btnAdd.setFocusable(false);
panel.add(btnAdd);
txtClient = new JTextField();
txtClient.setColumns(10);
txtClient.setBounds(6, 490, 200, 40);
panel.add(txtClient);
txtPossession = new JTextField();
txtPossession.setColumns(10);
txtPossession.setBounds(241, 386, 200, 40);
panel.add(txtPossession);
txtFixed = new JTextField();
txtFixed.setColumns(10);
txtFixed.setBounds(241, 438, 200, 40);
panel.add(txtFixed);
txtStatus = new JTextField();
txtStatus.setColumns(10);
txtStatus.setBounds(241, 490, 200, 40);
panel.add(txtStatus);
JLabel lblStatus = new JLabel("Model");
lblStatus.setHorizontalAlignment(SwingConstants.CENTER);
lblStatus.setBounds(241, 476, 55, 16);
panel.add(lblStatus);
JLabel lblModel = new JLabel("Model");
lblModel.setHorizontalAlignment(SwingConstants.CENTER);
lblModel.setBounds(6, 372, 55, 16);
panel.add(lblModel);
JLabel lblAffair = new JLabel("Affair");
lblAffair.setHorizontalAlignment(SwingConstants.CENTER);
lblAffair.setBounds(6, 424, 55, 16);
panel.add(lblAffair);
JLabel lblClient = new JLabel("Client");
lblClient.setHorizontalAlignment(SwingConstants.CENTER);
lblClient.setBounds(6, 476, 55, 16);
panel.add(lblClient);
JLabel lblPossession = new JLabel("Possession");
lblPossession.setHorizontalAlignment(SwingConstants.CENTER);
lblPossession.setBounds(241, 372, 70, 16);
panel.add(lblPossession);
JLabel lblFixed = new JLabel("Fixed");
lblFixed.setHorizontalAlignment(SwingConstants.CENTER);
lblFixed.setBounds(241, 424, 55, 16);
panel.add(lblFixed);
txtSearch = new JTextField();
txtSearch.setBounds(558, 390, 288, 32);
panel.add(txtSearch);
txtSearch.setColumns(10);
txtSearch.addKeyListener(new KeyAdapter() {
@Override
public void keyReleased(KeyEvent e) {
DefaultTableModel model = (DefaultTableModel)table.getModel();
TableRowSorter<DefaultTableModel> tr = new TableRowSorter<DefaultTableModel>(model);
table.setRowSorter(tr);
tr.setRowFilter(RowFilter.regexFilter(txtSearch.getText()));
}
});
JLabel lblSearch = new JLabel("Search");
lblSearch.setLabelFor(txtSearch);
lblSearch.setHorizontalAlignment(SwingConstants.CENTER);
lblSearch.setBounds(558, 376, 55, 16);
panel.add(lblSearch);
JButton btnAdd_1 = new JButton("");
btnAdd_1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
}
});
ImageIcon icon = new ImageIcon(Main.class.getResource("/files/edit2.png"));
Image img = icon.getImage() ;
Image newimg = img.getScaledInstance( 60, 100, java.awt.Image.SCALE_SMOOTH ) ;
icon = new ImageIcon( newimg );
btnAdd_1.setIcon(icon);
btnAdd_1.setOpaque(false);
btnAdd_1.setFocusable(false);
btnAdd_1.setContentAreaFilled(false);
btnAdd_1.setBorderPainted(false);
btnAdd_1.setBounds(450, 460, 50, 70);
panel.add(btnAdd_1);
JLabel lblLogo = new JLabel("");
lblLogo.setIcon(new ImageIcon(Main.class.getResource("/files/Logo.png")));
lblLogo.setBounds(6, 6, 154, 50);
contentPane.add(lblLogo);
JButton btnMail = new JButton("Email");
btnMail.setBounds(6, 234, 154, 50);
contentPane.add(btnMail);
JButton btnDash = new JButton("Dashboard");
btnDash.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
}
});
btnDash.setBounds(6, 183, 154, 50);
contentPane.add(btnDash);
JButton btnMaterial = new JButton("Material Manage");
btnMaterial.setBounds(6, 285, 154, 50);
contentPane.add(btnMaterial);
JButton btnContacts = new JButton("Contacts");
btnContacts.setBounds(6, 336, 154, 50);
contentPane.add(btnContacts);
JLabel lblTab = new JLabel("");
lblTab.setIcon(new ImageIcon(Main.class.getResource("/files/Tab.png")));
lblTab.setBounds(6, 6, 154, 530);
contentPane.add(lblTab);
JLabel lblBackground = new JLabel("");
lblBackground.setIcon(new ImageIcon(Main.class.getResource("/files/LightBackground.png")));
lblBackground.setBounds(6, 0, 1014, 542);
contentPane.add(lblBackground);
}
}
I tried by refreshing the entire frame after the program ran, but it did not work.
