Guest User

Untitled

a guest
Aug 5th, 2018
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.67 KB | None | 0 0
  1. Retrieve the value from data base into combobox
  2. package javacmbx;
  3.  
  4. import java.sql.*;
  5. import java.awt.*;
  6. import java.awt.event.*;
  7. import java.util.*;
  8. import javax.swing.*;
  9.  
  10.  
  11. public class comboautosuggest extends javax.swing.JFrame {
  12. Vector v=new Vector();
  13. Vector v1=new Vector();
  14. Statement TmpSqlStmnt;
  15. ResultSet TmpSqlRs;
  16. Connection con;
  17. int CateId;
  18. JTextField Txt01;
  19. TreeMap Map=new TreeMap();
  20.  
  21.  
  22. public comboautosuggest() {
  23. initComponents();
  24. }
  25. public void AutoSuggest() {
  26. Txt01=(JTextField)Cbx01.getEditor().getEditorComponent();
  27. Txt01.addKeyListener(new KeyAdapter() {
  28. public void keyTyped(KeyEvent e)
  29. {
  30. EventQueue.invokeLater(new Runnable()
  31. {
  32. public void run(){
  33. String text =Txt01.getText();//.toUpperCase();
  34. if(text.length()==0)
  35. {
  36. Cbx01.hidePopup();
  37. setModel(new DefaultComboBoxModel(v1), "");
  38. }
  39. else{
  40. DefaultComboBoxModel m = getSuggestedModel(v1, text);
  41. if(m.getSize()==0 ) {
  42. Cbx01.hidePopup();
  43. }
  44. else{
  45. setModel(m, text);
  46. Cbx01.showPopup();
  47. }
  48. }
  49. }
  50. });
  51.  
  52. }
  53.  
  54. /*public void keyPressed(KeyEvent e)
  55. {
  56.  
  57. String text = Txt01.getText();
  58. int code = e.getKeyCode();
  59. if(code==KeyEvent.VK_ENTER) {
  60. if(!v1.contains(text)) {
  61. v1.addElement(text);
  62. }
  63. hide_flag = true;
  64. }else if(code==KeyEvent.VK_ESCAPE) {
  65. hide_flag = true;
  66. }else if(code==KeyEvent.VK_RIGHT) {
  67. for(int i=0;i<v1.size();i++) {
  68. String str = (String) v1.elementAt(i);
  69. if(str.startsWith(text))
  70. {
  71. Txt01.setText(str);
  72. return;
  73. }
  74. }
  75. }
  76. }*/
  77. });
  78. try{
  79. Class.forName("com.mysql.jdbc.Driver");
  80. con =DriverManager.getConnection("jdbc:mysql://localhost:3306/project","root","root");
  81. TmpSqlStmnt=con.createStatement();
  82. TmpSqlRs=TmpSqlStmnt.executeQuery ("SELECT location,pincode FROM combovalue ORDER BY location");
  83. System.out.println("DB Connected");
  84. TmpSqlRs.first();
  85.  
  86. do
  87. {
  88. String s= TmpSqlRs.getString("location");
  89. Cbx01.addItem(s);
  90. CateId=TmpSqlRs.getInt("pincode");
  91. v1.addElement(s);
  92. v.addElement(CateId);
  93. Map.put(s, CateId);
  94. Cbx01.addItemListener(new ItemListener()
  95. {
  96. public void itemStateChanged(ItemEvent e) {
  97. if (e.getStateChange() == ItemEvent.SELECTED) {
  98. Lbl01.setText(Map.get(Cbx01.getSelectedItem()).toString());
  99. }
  100. }
  101.  
  102. });
  103. }while(TmpSqlRs.next());
  104.  
  105. }catch(Exception e){
  106. System.out.println(e);
  107. }
  108. }
  109. private boolean hide_flag = false;
  110. private void setModel(DefaultComboBoxModel mdl, String str) {
  111. Cbx01.setModel(mdl);
  112. Txt01.setText(str);
  113. }
  114. private static DefaultComboBoxModel getSuggestedModel(java.util.List<String> list, String text) {
  115. DefaultComboBoxModel m = new DefaultComboBoxModel();
  116. for(String s: list) {
  117. if(s.startsWith(text)) m.addElement(s);
  118. }
  119. return m;
  120. }
  121.  
  122. @SuppressWarnings("unchecked")
  123. // <editor-fold defaultstate="collapsed" desc="Generated Code">
  124. private void initComponents() {
  125.  
  126. Cbx01 = new javax.swing.JComboBox();
  127. Lbl01 = new javax.swing.JLabel();
  128.  
  129. setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
  130.  
  131. Cbx01.setEditable(true);
  132. Cbx01.addKeyListener(new java.awt.event.KeyAdapter() {
  133. public void keyPressed(java.awt.event.KeyEvent evt) {
  134. Cbx01KeyPressed(evt);
  135. }
  136. public void keyTyped(java.awt.event.KeyEvent evt) {
  137. Cbx01KeyTyped(evt);
  138. }
  139. });
  140.  
  141. javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
  142. getContentPane().setLayout(layout);
  143. layout.setHorizontalGroup(
  144. layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  145. .addGroup(layout.createSequentialGroup()
  146. .addGap(57, 57, 57)
  147. .addComponent(Cbx01, javax.swing.GroupLayout.PREFERRED_SIZE, 107, javax.swing.GroupLayout.PREFERRED_SIZE)
  148. .addGap(50, 50, 50)
  149. .addComponent(Lbl01, javax.swing.GroupLayout.PREFERRED_SIZE, 109, javax.swing.GroupLayout.PREFERRED_SIZE)
  150. .addContainerGap(77, Short.MAX_VALUE))
  151. );
  152. layout.setVerticalGroup(
  153. layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
  154. .addGroup(layout.createSequentialGroup()
  155. .addGap(88, 88, 88)
  156. .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
  157. .addComponent(Lbl01, javax.swing.GroupLayout.PREFERRED_SIZE, 22, javax.swing.GroupLayout.PREFERRED_SIZE)
  158. .addComponent(Cbx01, javax.swing.GroupLayout.PREFERRED_SIZE, 21, javax.swing.GroupLayout.PREFERRED_SIZE))
  159. .addContainerGap(190, Short.MAX_VALUE))
  160. );
  161.  
  162. pack();
  163. }// </editor-fold>
  164.  
  165. private void Cbx01KeyPressed(java.awt.event.KeyEvent evt) {
  166. //Txt01=(JTextField)Cbx01.getEditor().getEditorComponent();
  167. }
  168.  
  169. private void Cbx01KeyTyped(java.awt.event.KeyEvent evt) {
  170. // TODO add your handling code here:
  171. }
  172.  
  173.  
  174. public static void main(String args[]) {
  175. java.awt.EventQueue.invokeLater(new Runnable() {
  176. public void run() {
  177. comboautosuggest Tmpcas=new comboautosuggest();
  178. Tmpcas.AutoSuggest();
  179. Tmpcas.setVisible(true);
  180. }
  181. });
  182. }
  183.  
  184. // Variables declaration - do not modify
  185. private javax.swing.JComboBox Cbx01;
  186. private javax.swing.JLabel Lbl01;
  187. // End of variables declaration
  188.  
  189. }
Add Comment
Please, Sign In to add comment