Guest User

Untitled

a guest
Apr 21st, 2018
68
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.74 KB | None | 0 0
  1. if(selectedComponent instanceof javax.swing.JTextField){
  2. javax.swing.JTextField txtField = (javax.swing.JTextField) selectedComponent;
  3. //txtField.setColumns(numInput); //tried this but it doesn't work
  4. //txtField.setPreferredSize(new Dimension(numInput, txtField.getHeight())); //also this
  5. //txtField.setBounds(txtField.getX(), txtField.getY(), numInput, txtField.getHeight());
  6. //and this
  7. txtField.revalidate();
  8. }
  9.  
  10. import java.awt.*;
  11. import java.awt.event.*;
  12. import javax.swing.*;
  13.  
  14. public class JTextFieldExample
  15. {
  16. private JFrame frame;
  17. private JPanel contentPane;
  18. private JTextField tfield;
  19. private JButton button;
  20. private int size = 10;
  21.  
  22. private ActionListener action = new ActionListener()
  23. {
  24. public void actionPerformed(ActionEvent ae)
  25. {
  26. String input = JOptionPane.showInputDialog(
  27. frame, "Please Enter Columns : "
  28. , String.valueOf(++size));
  29. tfield.setColumns(Integer.parseInt(input));
  30. contentPane.revalidate();
  31. contentPane.repaint();
  32. }
  33. };
  34.  
  35. private void createAndDisplayGUI()
  36. {
  37. frame = new JFrame("JTextField Example");
  38. frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  39.  
  40. contentPane = new JPanel();
  41. contentPane.setLayout(new FlowLayout(FlowLayout.LEFT, 5, 5));
  42.  
  43. tfield = new JTextField();
  44. tfield.setColumns(size);
  45.  
  46. JButton button = new JButton("INC Size");
  47. button.addActionListener(action);
  48.  
  49. contentPane.add(tfield);
  50. contentPane.add(button);
  51.  
  52. frame.getContentPane().add(contentPane);
  53. frame.pack();
  54. frame.setLocationByPlatform(true);
  55. frame.setVisible(true);
  56. }
  57.  
  58. public static void main(String... args)
  59. {
  60. SwingUtilities.invokeLater(new Runnable()
  61. {
  62. public void run()
  63. {
  64. new JTextFieldExample().createAndDisplayGUI();
  65. }
  66. });
  67. }
  68. }
  69.  
  70. import java.awt.Dimension;
  71. import javax.swing.JFrame;
  72. import javax.swing.JTextField;
  73. import javax.swing.JButton;
  74. import java.awt.event.ActionEvent;
  75. import java.awt.event.ActionListener;
  76.  
  77.  
  78. public class Resize extends JFrame{
  79. public JTextField jtf = new JTextField();
  80.  
  81. public Resize(){
  82. //frame settings
  83. setTitle("Resizable JTextField");
  84. setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  85. setLayout(null);
  86. setSize(new Dimension(600,400));
  87. setResizable(false);
  88.  
  89. //init and add text field to the frame
  90. add(jtf);
  91. jtf.setBounds(20,50,200,200);
  92.  
  93. //button to change text field size
  94. JButton b = new JButton("Moar.");
  95. add(b);
  96. b.setBounds(20,20,b.getPreferredSize().width,b.getPreferredSize().height);
  97. b.addActionListener(new ActionListener(){
  98. public void actionPerformed(ActionEvent evt){
  99. jtf.setBounds(20,50,jtf.getSize().width+10,jtf.getSize().height); //THIS IS WHERE THE RESIZING HAPPENS
  100. }
  101. });
  102.  
  103. setVisible(true);
  104. }
  105. public static void main(String[] args){
  106. Resize inst = new Resize();
  107. }
  108. }
  109.  
  110. public static void main(String[] args) {
  111. JFrame frame = new JFrame();
  112. JTextField jTextField = new JTextField("Alice");
  113. JPanel panel = new JPanel();
  114. JButton grow = new JButton("DRINK ME");
  115. JButton shrink = new JButton("EAT ME");
  116. panel.add(jTextField);
  117. panel.add(grow);
  118. panel.add(shrink);
  119. frame.add(panel);
  120. frame.setVisible(true);
  121. frame.pack();
  122. grow.addActionListener(l -> {
  123. jTextField.setPreferredSize(new Dimension(400, 100));
  124. frame.pack();
  125. });
  126. shrink.addActionListener(l -> {
  127. jTextField.setPreferredSize(new Dimension(20, 5));
  128. frame.pack();
  129. });
  130. }
Add Comment
Please, Sign In to add comment