private void createTextBox() {
Graphics g = Game.getG();
Font font = new Font(fontName, fontStyle, fontSize);
g.setFont(font);
height = BORDER_WIDTH*2 + g.getFontMetrics().getHeight();
int stringWidth = g.getFontMetrics().stringWidth(dialog);
width = BORDER_WIDTH*2 + stringWidth;
[Code] .....
This gets called when ever I want to create my Textbox object however what gets created is a purple box (i know that I have set the array elements to purple to begin with) however when I try to use the drawstring method to "draw a string" I get an image which looks like the gif below. I have changed the text size to various sizes but without success. The string is supposed to say "This is a test" but obviously it doesn't.
How would I go about erasing the first buffered image before displaying the second one and eventually a third and fourth so that it appears the image is moving across the screen?
I am trying to read an image I have in the location of my project, So I do this:
When I read it in the try/catch like: BufferedImage image = ImageIO.read(new file(""));
And try to access it after the try/catch, it does not know that image exists, so I need to declare it as a global variable for that class first, and then it works.
public class Gui extends JFrame { private BufferedImage image1; public Gui() { super("MyApp"); setDefaultCloseOperation(EXIT_ON_CLOSE); setLocationRelativeTo(null); setVisible(true); initUI();
I wanted to write a method which gets a buffered image as parameter, rotates it 90 degrees clockwise around its top left corner, and then returns it. This method will be call from another method which then draws the rotated image on a rather large background which consists of many other images.
Here is the code I have so far:
public static BufferedImage rotate(BufferedImage img) { int w = img.getWidth(); int h = img.getHeight(); BufferedImage newImage = new BufferedImage(width, height, img.getType()); Graphics2D g2 = newImage.createGraphics(); g2.rotate(Math.toRadians(90), w/2, h/2); g2.drawImage(img,null,0,0); return newImage; }
This method does rotate an image 90 degrees, but when the calling method recieves this image and displays it on the bigger frame, parts of the rotated image is cut. I think because the frame holding the returned image is not big enough. I've tried playing around with the code a lot, chaging the sizes of different images, and trying AffineTransform features, but I have had no luck.
I am writing a java program that takes a FROM image, a TO image, and a ratio (this is a slide bar in the GUI). Here's my code: Java Code:
public static BufferedImage rollUp (BufferedImage from, BufferedImage to, double ratio) { BufferedImage finalBufferedImage = new BufferedImage(from.getWidth(), from.getHeight(), from.getType()); int packedColor = 0; for (int r = 0; r < from.getHeight(); ++r) { for (int c = 0; c < from.getWidth() ; ++c) {
[code]...
So from 0 to 1 (ratio is a double between 0 and 1) the image will "roll up". The effect works completely in the GUI, but the console freaks out at about 0.33 ratio.. This program runs for testing in a class Main and uses a class Splittinimage.. this method is in class TwixPix. When the main class is run, a box pops up with a combo box and a slider. You pick an effect (in this case, roll up) and then slide the slider to set the ratio. The image below those two things performs the effect that was selected. Imagine a PowerPoint presentation slide effect.
How can I write a BufferredImage to an 8-bit .bmp using indexed colors stored in a <String,Color> Hashtable?
I've never used Hashtables before, and I didn't know color indexing existed until now, but I can do most other things in java fairly well.
I'm not looking for code, just the concept, as I really don't know how Hashtables work (although I could figure it out), and how color indexing does. I know how to write image files, just not indexed or with a specific number of bits. I am using Hashtables generated from GIMP.
EDIT: I mainly want to know how to save a BufferedImage as an indexed .bmp.
I've tried multiple things but I can't seem to figure out how to get my JButton over the background graphics. On lines 104-108 I create the JButton I need to put on the screen, though I have no clue how to draw it. How I can paint over this background and have my button stay there?
public static final int WIDTH = 1024; public static final int HEIGHT = 640; private Thread thread; private boolean running; private BufferedImage image; private Graphics2D g;
I'm trying to read images and draw them on JLabel. This code snippet below is reading images from a folder
private ArrayList<ShowItem> getData() { int score = 0; ArrayList<ShowItem> item = new ArrayList<ShowItem>(); File dir = new File(getImageFolderPath()); if (dir.isDirectory()) { for (final File f : dir.listFiles(IMAGE_FILTER)) { BufferedImage img = null; try {
[Code]...
ShowItem is a class that extends Image. DisplayImage extends ShowItem.
One of the overridden methods in ShowItem is
@Override public Graphics getGraphics() { return null; }
I'm not exactly sure what to do here so I left it.
In another class, where I draw the images on Jlabel. This is what I have:
I tried to run it, and check if I'm actually getting the images, and did system out and it listed all the jpg images I have but it's not displaying on the panel.
So what I do normally is draw the bottom layer of grass, and when I draw the second layer with trees, the tree layer has a shadow, that shadow doesn't go ontop of the grass layer, but instead it overwrites the grass layer aswell and I've checked the color codes, the shadow has combined with white, not the first layer.
it's obvious that that's not how alpha works then, how do I do it?
So I created little program. So window is in full screen. Paint method.
package Test; import java.awt.*; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import javax.swing.*; import java.util.Random; public class Main extends JFrame { Graphics g;
[Code] ....
So, paint method works perfectly. He paint rectangle. Good. But I dont know how using ,,paint2'' method. I need when you press z button, ,,paint2'' method draw Oval in random coordination. So instead ,,paint2'' method i using repaint() but i dont know nothing about paint methods and so on. So how using ,,paint2'' method? Now when i run program, i get a lot of error..
I am having trouble with methods. What I want to do is be able to create 4 types of strings under the same method, but only draw one of them at a time.
How can I write a method that takes a string with duplicates letters and returns the same string which does not contain duplicates. For example, if you pass it radar, it will return rad. Also i would like to know how can I Write a method that takes as parameters the secret word and the good guesses and returns a string that is the secretword but has dashes in the places where the player has not yet guessed that letter. For example, if the secret word is radar and the player has already guessed the good guesses letters r and d, the method will return r-d-r.
I am currently trying to make a calculator in Java. I want to use the String split method to tokenize the string of characters inputted. I thought I was using the String split method wrongly, because I had surrounded the characters I wanted to delimit with square brackets. However, when I removed the square brackets, the code threw an exception when I pressed the equal button. The exception was a PatternSyntaxException exception. Am I using the String split method wrongly? And why is the exception thrown? Here is my code:
import javax.swing.*;//import the packages needed for gui import java.awt.*; import java.awt.event.*; import java.util.Arrays; import java.util.List; import static java.lang.Math.*; public class CalculatorCopy { public static void main(String[] args) {
i am trying to write a class method which will take in a string and returns a string which is the reversed version of that string. it compiles fine but when i try to run it it states Main method not found in class StringReverse,please define the main method as public static void main(String[]args). I am new to java and cannot figure out
import javax.swing.JOptionPane; public class StringReverse { public String reverseString(String str){ JOptionPane.showInputDialog(null,"Please enter word"); char c = str.charAt(str.length()-1); if(str.length() == 1) return Character.toString(c); return c + reverseString(str.substring(0,str.length()-1));}}
I am working on a simple online chat program. I have build the server services and generally everything works smoothly.Now for the input area i use a JEditorPane as like the output message area. The reason of choosing JEditorPane is because i want to apply some CSS on future...
Now under the input message area there are two JButtons. One for attachments and other one for emoticons. Now i am trying to make a Popup Menu with all my Emoticons Images when someone click the JButton(emoticons). I was thinking about a JList inside a popupMenu but that kind of thing is mostly impossible i guess. Any way to automaticaly convert String to images for example when someone type in inputJEditor something like this :) or this :( to convert it to emoticon image ...
Code a Java method that accepts a String array and a String. The method should return true if the string can be found as an element of the array and false otherwise. Test your method by calling it from the main method which supplies its two parameters (no user input required). Use an array initialiser list to initialise the array you pass. Test thoroughly.
public class test { public static void main(String[] args) { Printhelloworld(); String[] verbs = {"go", "do", "some", "homework"}; printArrays(verbs);
So I'm creating a class which when given three inputs uses them as sides of a triangle and tells ther user what type of triangle it is, or if the input is invalid, tells them why it is invalid. I'm readin the input as a string and then trying to split it into a string array, from there checking to see if it has 3 elements.. in which the data is good at that point, and then converting them to ints and checking to see if they're negative ansd finally checking to see if they can work as sides of a triangle ie a+b >c, a+c >b , b+c >a.
I'm trying to split it into an array of strings but am getting an error, and can't seem to figure out why as this should be working from what I've read of the string.split method online.
import java.util.*; public class TriangleTest{ private int sideA; private int sideB; private int sideC; public static void main(String[] args){ TriangleTest triangle = new TriangleTest("3 4 5");
Ok so to learn Dnd image ability a little further I created a simple drag and drop application trying to use an external image when trying to drag and drop. Unfortunately I am still getting errors during the startDrag method call. This is the error message it gives "java.awt.dnd.InvalidDnDOperationException: drag image creation problem: drag image is not ready"
I have to make an application called miles to meters that converts miles to meters that asks for user input through joption pane and the output can be eather system.out.println or joption pane, I found the code i need but it uses buffered reader for input not joption pane. Here is the source code
import java.io.*; import java.util.*; class MetersToMiles{ public static void main (String[] args)throws Exception{ // 1 meters = 0.00062137119 miles;
I've got a .csv file with some text and numeric data. I've used BufferedReader to successfully print the data to the console. Now I need to perform mathematical operations on the numerical data. How do I access the data from the BufferedReader in my calculation methods?
What I would like to be able to do is create some loops to calculate totals for some of the elements, but I'm not sure how to access the data from other methods (and potentially classes?).
I am reading each line of the input one line at a time and incrementally storing four char positions into an array, so i am able to hold a vertical representation of each column. I.e. column 1 will be stored in array[0].
The problem with my code is that is does not read the last line of the input, it reads all the other inputs before it but just refuses to read the last line and execute the procedure of storing the characters.
Code:
public void defuseBomb(){ try { BufferedReader reader = new BufferedReader(new InputStreamReader( System.in)); String asciiLine = reader.readLine()+ " "; int digit = (asciiLine.length())/4;