Swing/AWT/SWT :: JScrollPane Getting Full But Not Scrolling?
Mar 1, 2014
I am trying to create a JScrollPane with buttons in it, but I noticed that when I try to scroll, the items all move into ONE row at the top of the JScrollPane. How do I have them vertical? Is there something wrong with the way I am setting up the JScrollPane?
private static void addScrollPane() {
jScrollPane = new JScrollPane(new JPanel());
((JPanel)jScrollPane.getViewport().getView()).add(new JButton("First Button"));
[Code]....
View Replies
ADVERTISEMENT
May 24, 2014
I have Implemented a user control / component that allows zooming in and out of a displayed BufferedImage, for discussion's sake, 3rd party libraries are excluded and everything must be from scratch.I have an image rendered on a JPanel, the JPanel is contained within a scrollbar.
Zooming inout etc works perfectly.The Scrollbars are rendered correctly on Zoom In and disappear when I zoom out.I want to add the functionality of focusing on a specific quarter of the displayed image via four dedicated buttons, each send an int (1-4) to a method, that controls the scrollbars.
public void zoomToQuarter(int i)
{
double width = (currentBufferedImage.getWidth()*2.2)+1;
double height = (currentBufferedImage.getHeight()*2.2)+1;
JScrollBar vertical = scrollPane.getVerticalScrollBar();
JScrollBar horizontal = scrollPane.getHorizontalScrollBar();
horizontal.setMaximum((int)width);
vertical.setMaximum((int)height);
[code]....
And resizes the image whilst scrolling the scrollbars accordingly,The method works as expected, and the scrollbars go to the desired location, But there's a catch:The first click on any of the above buttons does not work, but from the second click and on, everything works great!
View Replies
View Related
Feb 7, 2014
I have a swing application that gets football scores from a website using Jsoup.
When the "Get Scores" button is pressed, the scores are printed to a JTextArea with a JScrollPane.
I have also used a SwingWorker to update the scores every couple of seconds.
My problem is that every time the JTextArea updates, the JScrollPane scrolls back to the top of the text area. I wan the scroll bar to stay where the user left it.
Here is my code (The update is currently set to update every 1 second so you can see what the scroll bar is like).
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.select.Elements;
public class frame extends JFrame {
[Code] ....
View Replies
View Related
Feb 7, 2014
I am trying to place a number of JLabel and JTextField objects inside a JPanel which has a JScrollPane.
One thing is, that at one time, I have have a certain number of JLabel and JTextField objects which number would cover an area greater than the JPanel's vertical size.
How when I implement the JScrollPane and I run the program, the scroll bars appear, but they don't scroll the pane inside the JPanel, the items are fixed.
Could the problem be because I am using a Null Layout.
Will I have to use one of the standard layouts available, like GridLayout for the JScrollPane scrolling function to work?
View Replies
View Related
Jul 16, 2014
I want to make swing form full screen even on taskbar on linux machine. But after trying so hard unable to achieve it. I am using fedora as operationg system.
Below i am giving you my swing code. but whenever i run this file form comes up on the screen and waits for a second and it goes in background.
I am using linux OS Fedora 64 bit.
public class ThankYou {
JFrame f;
JTextArea nameField;
JLabel lable;
String str;
[Code] ....
View Replies
View Related
Mar 3, 2006
I have a JScrollPane with a JTextArea. The JTextArea is loaded with 10 lines of data. I have two JCheckBox's. The first check box sets the scroll to 10. sp.getVerticalScrollBar().setValue(10); The second check box reloads (ta.setText(text)) the text and then sets the scroll to 10. Why does the second one not work? I have attached a simple program. It is probably easier for you to compile and run than for me to go into detail explaining further.
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Tester extends JFrame {
private static final String text = "1
[Code] ......
View Replies
View Related
Mar 3, 2014
When I add to a JScrollPane (I'm adding to a JPanel then putting that in the scroll pane) it displays as many items in one row as possible. How can I make it so that it only displays one per row?
View Replies
View Related
Jun 14, 2014
I would like to have one horizontal scrollbar control the scrolling of two JScrollPane objects (each of which contains a JTable with similar models). The line of code that I hoped would give me what I want is this:
spUpper.setHorizontalScrollBar(spLower.getHorizontalScrollBar());
It does exactly what I want, except that the scrollbar appears on-screen in the spUpper JScrollPane, while the spLower JScrollPane no longer displays a scrollbar at all. That's the opposite of what I expected. Apparently, spUpper's setHorizontalScrollBar is "stealing" spLower's scrollbar.
An alternative is just to have each scrollbar use the same model, like this:
spUpper.getHorizontalScrollBar().setModel(spLower.getHorizontalScrollBar().getModel());
This links the two scrollbars such that either will control both JScrollPanes (and also the other scrollbar), but it leaves them both visible, which is not what I want. I would have thought this line would make one of them invisible:
spUpper.getHorizontalScrollBar().setVisible(false);
However, it seems to have no effect.
The full code using the first approach is below. My questions are these:
Am I correct that setHorizontalScrollBar not only sets which JScrollBar will control a JScrollPane, but also determines where it appears on the screen?If so, what happens to the original JScrollBar? Is it replaced or am I drawing one on top of the other (or something else)?Why doesn't setVisible(false) make the scrollbar disappear (and how can I do that)?
package tandemtables;
public class Main extends javax.swing.JFrame
{
public Main()
[Code].....
View Replies
View Related
Oct 31, 2014
I've created a chat program, but now I need to show messages in different colors depending if the message is received or sent. I was wondering if I can use jlabel to do this but in this case I need that jlabels to scroll in a jpanel. how to do this or maybe using a rtf ?
View Replies
View Related
Dec 9, 2014
I'm writing a Java Swing program for my software development class to allow a user to create a map for a side scroller video game. I'm stuck on a particular part of my GUI where I'm trying to create a properties box for specific tiles. When I draw the components onto the JPanel and display it as it is, it shows two check boxes per row. On the ScrollPane however, all the check boxes go straight onto one line and draw out the scroll pane. Right now I am only concerned with just making the basic GUI.
Here is what I have so far:
Within the main class, I am creating the JFrame and adding components to it. I am attempting to create a JScrollPane which will hold the properties check boxes...
Here is the method where I am implementing the code. It works, but it doesn't display correctly.
private void createPropertiesBox() {
PropertiesBoxPanel pbp = new PropertiesBoxPanel();
propertiesBox = new JScrollPane(pbp);
propertiesBox.setViewportView(pbp);
frame.add(propertiesBox);
[Code] .....
I've been tinkering with this code for quite some time now and I cannot seem to make a breakthrough on how to fix this.
View Replies
View Related
Apr 27, 2014
I've built up an unreasonably large and unreasonably complicated JPanel. Unfortunately, when I use setViewportView to add it to a JScrollPane, a get an extended UI freeze—that operation takes several seconds. I'm trying to figure out what's taking so long. I've tried some fairly extreme things, like overriding the paintComponent, PaintComponents, paintChildren, paint, repaint, validate, revalidate, and validateTree methods in the panel with no-ops to try to figure out what's taking so long, but to no avail. I've tried validating the JPanel before adding it, but that has no effect. If I override the addImpl method of the scroll pane, that makes things quick, but it doesn't really narrow things down much.
View Replies
View Related
Jan 15, 2014
I am having problems trying to get my jPanel to display my drawings properly after scrolling. (My drawings is done using by overriding the paint() method as the paintComponent() method does not work in my case.) My jPanel is component of my JScrollpane, and my JScrollpane is part of my jFrame.
The organization of components is: JFrame <-- JScrollPane <-- JPanel ( <-- means added to).
Situation: My drawings did appear when the frame becomes start, but when I start scrolling the scrollbar in any direction, it starts to eat up my drawing leaving only part of drawing which is not affected by scrolling.
I want my jpanel to display the drawing properly even after scrolling in both vertical and horizontal directions. I did use revalidate and repaint methods in my method for start of the JFrame.
Some Ways which I have tried:
1) I have tried adding this.revalidate() and this.repaint() method to the paint() method which did retains the image, but the jPanel keeps blinking on my screen which is trying attempt to update the drawing in a recursive manner.
2) I have tried panel.repaint() and panel.revalidate() in my paint() method, but it did not display my drawing.
3) I have read from other sources that I needed a listener to do it, but I am not sure how it works.
// Code Use for Listener
jScrollPane1.getViewport().addChangeListener(new ListenAdditionsScrolled());
public class ListenAdditionsScrolled implements ChangeListener {
public void stateChanged(ChangeEvent e) {
jPanel3.revalidate();
jPanel3.repaint();
}
}
View Replies
View Related
Feb 21, 2015
Returning true from getScrollableTracksViewportWidth() makes the table (or other Scrollable) size its width to match the viewport. I need the opposite: for the viewport to expand its width to accommodate the table (of course, limited by the constraints imposed by the scroll pane's container's layout manager) without reducing column widths i.e. setAutoResizeMode(AUTO_RESIZE_OFF).
I have achieved this by overriding
getPreferredScrollableViewportSize(): JTable table = new JTable() {
@Override
public Dimension getPreferredScrollableViewportSize() {
return new Dimension(super.getPreferredSize().width,
super.getPreferredScrollableViewportSize().height);
}
};
Now when the scroll pane is added at BorderLayout.CENTER and the frame is pack()ed, all columns of the table are displayed, without need for a horizontal scrollbar.
View Replies
View Related
Feb 5, 2015
I have a problem with the size of my scrollPane. It won't fill the space in the JPanel.
is there a way to let the scrollPane fill the whole space?
View Replies
View Related
Apr 15, 2009
I have a JTable that is within a JScrollPane. If I try to write add a MouseListener to the JTable it never fires. However, a mouse event does fire for the JScrollPane which it is added to. Is there a way to prevent the JScrollPane from capturing the event or passing it along to the JTable?
View Replies
View Related
Nov 16, 2014
So for a test i have a small array set as a jlist which is the contents of my jscrollpane, and it appears as if nothing is there until i adjust the window size by dragging it out or in... whats going on?
Here is the full code
import java.awt.BorderLayout;
import java.awt.ComponentOrientation;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
[Code] ...
View Replies
View Related
Feb 13, 2015
In my code where the Button Action Performed is created, I have done the following to ensure that the visibility of the JTable and JScrollPane have been set to true. But it does not work?
Code below:
private void RunQueryButtonActionPerformed(java.awt.event.ActionEvent evt) {
jScrollPane2.setVisible(true);
table_001.setVisible(true);
try {
PreparedStatement st =conn.prepareStatement(SQLTextEditor.getText());
ResultSet rs = st.executeQuery();
table_001.setModel(DbUtils.resultSetToTableModel(rs));
table_001.setAutoResizeMode(table_001.AUTO_RESIZE_OFF);
[code]....
View Replies
View Related
Apr 19, 2014
I have jFrame where I have to display data from database on button click. There are 4 buttons, first to display the first record in database, last to display the last record in database, next to display the next record and previous to display the previous record. I have done first and last record but what should I do to display the next and previous record.
View Replies
View Related
May 20, 2014
I'm trying to make a canteen class that holds water. It holds two quarts of water and two quarts is 100%.
public double maxVolume;
public int percentFull;
Right now the Canteen is empty.
public void Canteen()
{
percentFull=0;
maxVolume=0;
}
And right now I'm trying to make a constructor that specifies the amount of liquid the canteen can hold and specifies the percent full.
public Canteen(double maxVolume, int percentFull)
{
}
Should I make this second Canteen an integer, a double, or something else? Also, how do I make sure the Canteen never reaches higher than 100%. I'm also curious how I can keep maxVolume and percentFull connected so the % of water is consistent with the number of quarts(2) the Canteen can hold.
View Replies
View Related
Feb 28, 2015
I have read through some of the posts on insert sort /arrays and see close but not exactly what I'm looking for. I don't want to use a library to do work for me, I want to do it myself and understand it.
OrderedArrayList.java
// import static org.junit.Assert.assertEquals;
public class OrderedArrayList<T extends Comparable<T>> {
// T is a variable that contains a class type, array of T things
private T[] arrayA; // changed to private per example
private T[] arrayB;
int numElements = 0;// number of elements full (not null), used in multiple methods. numElement -1 = back
[Code] ....
View Replies
View Related
Feb 15, 2014
I want to create a borderless window with a background; I want this background's transparency set at full, so that the corners show the image of whatever's underneath, just as in the picture. Then, I want to add an image (or button) to a specific x, y location in the window (which is NOT resizeable, which is my desire) and then have the user able to click the button; button1 does function1, button 2 does function2, etc. But the images (or buttons) must ALSO have transparency, so that you can see the background image.
I wrote this program in VB.NET already; I'm trying to rewrite it in Java, as I can no longer work in VB... the program is simply taking up too much memory and is far too slow. Java should handle the whole process better.
View Replies
View Related
Jun 16, 2014
I'm currently making a Breakout clone to learn about different ways of organizing my code and whatnot but I've run into a problem with the positioning of some pieces versus the position of the mouse.
I've created a blue rectangle on the screen that turns white when the mouse hovers over it, BUT it actually only ends up turning white about halfway down and then continues on off the block. I moved the rectangle to 0,0 to see where it draws and it looks like it is drawing to the very top left corner of the window itself but for the mouse coordinates, the top left is just where the black area is and excludes the borders of the window.
Here is the class rendering the rectangle, it extends from a class that in turn extends from the JPanel class:
public class MainMenuState extends MenuState {
JFrame gameFrame;
Graphics2D g;
// PlayButton variables
int playPosX = 0;
int playPosY = 0;
int playWidth = 100;
int playHeight = 50;
[Code] ....
A few other things I tried that I can think off the top of my head: Play around with different layouts (at times this caused the screen to shrink to a small size as well as using pack()), using setSize() setLocation() or setBorder() in the MainMenuState class which had no effect.
Someone on another forum also suggested trying to utilize component.getLocationOnScreen(): I tried two things with the getXOnScreen method, first subtracting with the location of the JPanel which of course gave me the same problem. After that I tried
MOUSE.x = event.getXOnScreen() - gameFrame.getLocationOnScreen().x;
MOUSE.y = event.getYOnScreen() - gameFrame.getLocationOnScreen().y;
but that resulted in some errors (null pointers) and the mouse was just printing out a position of 0,0
View Replies
View Related
May 6, 2014
I'm trying write a Dijkstra's implementation in java. First off, here is the algorithm:
package lab3;
import java.util.HashMap;
import java.util.Stack;
/**
* Compute shortest paths in a graph.
*
* Your constructor should compute the actual shortest paths and maintain all the information needed to reconstruct them. The returnPath() function should use this information to return the appropriate path of edge ID's from the start to the given end.
*
* Note that the start and end ID's should be mapped to vertices using the graph's get() function.
*/
class ShortestPaths {
Multigraph graph;
final int INF = Integer.MAX_VALUE;
PriorityQueue<Integer> Q;
[Code] ....
I followed someone else psuedocode very closely but for whatever reason, my edge[] array is just full of null data, which means I can't actually return the shortest path. Why that's happening/how to fix it? Maybe I'm not understanding dijstra's correctly.
View Replies
View Related
Feb 17, 2014
Basically the code is for a game which is displayed in a window. The statement if(false) //full screen mode is confusing me a little. How does this if work? it doesn't seem to be testing for anything so how does it ever get set to full screen mode? Is the if even needed? why not just code windowed mode?
public class Window extends JFrame{
private Window()
{
// Sets the title for this frame.
this.setTitle("My test");
// Sets size of the frame.
if(false) // Full screen mode
[Code] .....
View Replies
View Related
Jul 10, 2014
I'm trying to set a variable to point to the last full cell of an array and then create a new larger array and then have the variable be updated to point to the new array's last full cell index value.
a) Should the variable be declared static?
b) What would be the best initial value to set this variable to? Shouldn't it correspond to a <for> loop index rather than a solid integer?
private lastfullcell = a[i];
private int [] a;
c) How would you update <lastfullcell> because if you passed the index through a method's loop index isn't the array index value garbage collected after the method completes?
View Replies
View Related
May 10, 2015
The code:
import javafx.application.Application;
import javafx.collections.FXCollections;
import javafx.geometry.Insets;
import javafx.geometry.Pos;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.control.*;
import javafx.scene.layout.BorderPane;
[Code] ....
run (when window height > 700px ) :
HTMLEditor default height is 670px, the other area (green color) is not filled,why?
HTMLEditor 高度总是670px, 怎么把HTMLEditor 填充满窗口?
这是一个bug吗?
is it bug?
View Replies
View Related