Okay so in the Snakes & Ladders game I'm doing, if this is the movePlayer method:
[code]void Snakes::movePlayer(){
r = rollDice();
if(canMoveTile(r) == true) {
if((((playerPosition[p.currentPlayer()-1][0])+r) / 10) != 0){
removePlayer();
if(playerPosition[p.currentPlayer()-1][1] == 9){
playerPosition[p.currentPlayer()-1][0] = 9 - (((playerPosition[p.currentPlayer()-1][0] + r) % 9));
}else{
playerPosition[p.currentPlayer()-1][0] = (((playerPosition[p.currentPlayer()-1][0] + r) % 10));
playerPosition[p.currentPlayer()-1][1]++;
}
b.addBoard(playerPosition[p.currentPlayer()-1][0],playerPosition[p.currentPlayer()-1][1],b.getBoard(playerPosition[p.currentPlayer()-1][0],playerPosition[p.currentPlayer()-1][1])+p.currentPlayer());
}else{
removePlayer();
playerPosition[p.currentPlayer()-1][0] = (((playerPosition[p.currentPlayer()-1][0] + r) % 10));
b.addBoard(playerPosition[p.currentPlayer()-1][0],playerPosition[p.currentPlayer()-1][1],b.getBoard(playerPosition[p.currentPlayer()-1][0],playerPosition[p.currentPlayer()-1][1])+p.currentPlayer());
}
}
}[/code]
How would I get it to move in the right way? As in when it gets to the end column, it moves up and proceeds left, then when it gets left it moves up and goes right. I'm sure its a simple modulus thing I have to do or something but I can't figure it out.
Any help would be much appreciated
[QUOTE=mchapra;35723208]I've decided to dabble in Adobe AIR but I really can't find any good guide to it. It's like it's non-existent.[/QUOTE]
don't
I'm trying to render a spritefont in OpenGL. I don't really need to save it to a file, just keep a texture in memory. What's the best way to render 255 separate textures onto one big texture?
More of a math question than programming question, but does anyone know of a good way to make sure my game updates the same amount of times across hardware? Like that it knows the the last frametime, and only runs update() 10 times per second or so. Regardless if the framerate is 1000 or 60.(This would be easy to make but the problem is with a non stable framerate)
[QUOTE=Mordi;35728770]I'm trying to render a spritefont in OpenGL. I don't really need to save it to a file, just keep a texture in memory. What's the best way to render 255 separate textures onto one big texture?[/QUOTE]
Just do a copy from the character texture buffer to the font texture buffer.
[QUOTE=swift and shift;35728081]don't[/QUOTE]
That bad?
Anyone know how sites like HideMyAss work? I am just curious how they stop the user from loading the target sites resources without a proxy. My guess was they replace the domain in the response. But what if you have like,
img.src = 'http://partial' + ' names.com';
How would you stop that? Granted regex could handle that up to a point. But what about heavily obfuscated files?
[B]Edit:[/B]
[url=http://www.facepunch.com/threads/1174646?p=35732619&viewfull=1#post35732619]Answer[/url]
What do you guys think about this opengl tutorial :
[URL="http://www.arcsynthesis.org/gltut/"]http://www.arcsynthesis.org/gltut/[/URL]
Similar issue to what I had before... This code acts very oddly. It opens two Open File dialogs either at the same time or one after the other. When I try and step through this code, it gets to GetOpenFileNameA() and then when I try to step over it, it jumps back up to whatever breakpoint I was going from. The next time around, it works as intended and only ONE Open File dialog opens. I have less than 5 days to get this fixed (University assignment, so any help would be GREATLY appreciated right now...)
[cpp]OPENFILENAMEA ofn;
ZeroMemory(&ofn, sizeof(OPENFILENAMEA));
char filename[MAX_PATH] = "";
ofn.lStructSize = sizeof(OPENFILENAMEA);
ofn.hwndOwner = NULL;
ofn.lpstrFilter = "OBJ Files (*.obj)\0";
ofn.lpstrFile = filename;
ofn.nMaxFile = MAX_PATH;
ofn.Flags = OFN_FILEMUSTEXIST | OFN_PATHMUSTEXIST | OFN_OVERWRITEPROMPT;
ofn.lpstrDefExt = "obj";
BOOL success = GetOpenFileNameA(&ofn);
if(success)
{
std::cout << "Loading from " << filename << std::endl;
}[/cpp]
Having an annoying problem with effects files and DX10. I'm trying to create an effect from file, except for a slight issue.
It returns E_FAIL as it should, however it should also return what error is occurring as well to a ID3DBlob called error, issue is, that it doesn't. So I don't know why its failing. I believe its opening the file fine just can't figure it out.
Code:
Function where its called.
Class to which buildFX is a part of
[code]
class gShaderHandle
{
private:
ID3D10Effect* gEffect;
ID3D10EffectTechnique* gTech;
ID3D10InputLayout* gVertexLayout;
ID3D10Device* device;
public:
bool buildFX(LPCWSTR filename);
bool buildVertexLayouts();
ID3D10Effect* returnEffect();
ID3D10EffectTechnique* returnTech();
gShaderHandle(ID3D10Device* *device = NULL);
};[/code]
[code]
bool gShaderHandle::buildFX(LPCWSTR filename)
{
ID3D10Blob* error;
HRESULT hr = 0;
hr =D3DX10CreateEffectFromFile(filename,
NULL,
NULL,
"fx_4_0",
D3D10_SHADER_DEBUG,
0,
device,
0,
0,
&gEffect,
&error,
0);
if(FAILED(hr))
{
if(error)
{
MessageBoxA(0, (char*)error->GetBufferPointer(), 0, 0);
error->Release();
}
}
gTech = gEffect->GetTechniqueByName("techPass");
return true;
}[/code]
Effect File:
[code]
cbuffer cbPerObject
{
float4x4 gWVP;
};
void vs(float3 iPosL : POSITION,
float4 iColor : COLOR,
out float4 oPosH : SV_POSITION,
out float4 oColor : COLOR)
{
oPosH = mul(float4(iPosL, 1.0f), gWVP);
oColor = iColor;
}
float4 ps(float4 posH : SV_POSITION,
float4 color : COLOR) : SV_Target
{
return color;
}
technique10 techPass
{
pass P0
{
SetVertexShader( CompileShader( vs_4_0, vs() ) );
SetGeometryShader( NULL );
SetPixelShader( CompileShader( ps_4_0, PS() ) );
}
}[/code]
[QUOTE=dajoh;35729770]Just do a copy from the character texture buffer to the font texture buffer.[/QUOTE]
I'm not sure how to do this. I tried doing it with a pixelbuffer-object, and then turning the pixelbuffer into a texture after adding each character. However, currently I'm only getting a jambled mess of whites and transparent pixels.
I think my problem lies here, as I have no idea how to handle the function where it actually places each generated character into the pixel-buffer:
[cpp]glBufferSubDataARB(GL_ARRAY_BUFFER_ARB, sizeof(pixelBuffer), sizeof(character_data), &character_data);[/cpp]
This function takes an "index" and a "length". These supposedly take integers to decide where to put the pixel-data of a character, but how would I retrieve this information (position and length of the previous information of the buffer)?
Maybe it isn't necessary to use a pixel-buffer object at all?
I wrote a small application in MonoDevelop with GTK#. I would like to distribute the application on multiple platforms, however MonoDevelop only allows me to create a .exe(in Windows and Linux binary formats). How do I get MonoDevelop to publish on a Mac?
Also, what files/things do people need to get it to run? I'm assuming .NET and Mono for Windows, and just Mono for Linux/Mac.
[QUOTE=Mordi;35734614]I'm not sure how to do this. I tried doing it with a pixelbuffer-object, and then turning the pixelbuffer into a texture after adding each character. However, currently I'm only getting a jambled mess of whites and transparent pixels.
I think my problem lies here, as I have no idea how to handle the function where it actually places each generated character into the pixel-buffer:
[cpp]glBufferSubDataARB(GL_ARRAY_BUFFER_ARB, sizeof(pixelBuffer), sizeof(character_data), &character_data);[/cpp]
This function takes an "index" and a "length". These supposedly take integers to decide where to put the pixel-data of a character, but how would I retrieve this information (position and length of the previous information of the buffer)?
Maybe it isn't necessary to use a pixel-buffer object at all?[/QUOTE]
The way I do it is that I pack the glyphs together way before OpenGL touches it. I'm using FreeType, so I read in all the glyph metrics that I need, run them through an algorithm that lays out glyphs on the glyph sheet as tightly as possible, then renders each glyph and copies it to the glyph sheet row by row.
Once I have the entire glyph sheet created in client memory, I send it off to OpenGL with glTexImage2D.
[editline]27th April 2012[/editline]
[QUOTE=Blueridge;35735067]I wrote a small application in MonoDevelop with GTK#. I would like to distribute the application on multiple platforms, however MonoDevelop only allows me to create a .exe(in Windows and Linux binary formats). How do I get MonoDevelop to publish on a Mac?
Also, what files/things do people need to get it to run? I'm assuming .NET and Mono for Windows, and just Mono for Linux/Mac.[/QUOTE]
Just .NET for Windows and just Mono for Linux/Mac.
[QUOTE=robmaister12;35737693]The way I do it is that I pack the glyphs together way before OpenGL touches it. I'm using FreeType, so I read in all the glyph metrics that I need, run them through an algorithm that lays out glyphs on the glyph sheet as tightly as possible, then renders each glyph and copies it to the glyph sheet row by row.
Once I have the entire glyph sheet created in client memory, I send it off to OpenGL with glTexImage2D.[/QUOTE]
I guess what I'm unsure about is the handling of the arrays. How do you add glyphs into one array? Do you calculate the size of the array before you add any glyphs to it? And how do you handle separating it into rows?
[QUOTE=Mordi;35742043]I guess what I'm unsure about is the handling of the arrays. How do you add glyphs into one array?[/QUOTE]
[cpp]
for(int y = 0; y < h; y++)
{
for(int x = 0; x < w; x++)
{
dst[dstX + x][dstY + y] = src[x][y];
}
}
[/cpp]
[QUOTE=Mordi;35742043]Do you calculate the size of the array before you add any glyphs to it[/QUOTE]
Yes.
[QUOTE=Mordi;35742043]And how do you handle separating it into rows?[/QUOTE]
What?
[QUOTE=Mordi;35742043]I guess what I'm unsure about is the handling of the arrays. How do you add glyphs into one array? Do you calculate the size of the array before you add any glyphs to it? And how do you handle separating it into rows?[/QUOTE]
Think of it less as an array and more of a texture. You have several smaller textures that you want to drop into a larger texture. So you take each row of the smaller texture and copy it into a location on the larger texture. FreeType provides the width and height of each glyph, and you should have a glyph sheet size already calculated. When you calculate the glyph sheet size, one of the results is that you're also calculating the location of each glyph.
So you render each glyph with FreeType which gives you a pointer to the data. The data is going to be of length (width * height). When you copy into the larger texture, the size of width changes, so doing a straight memcpy will stretch the glyph out to only one or two rows in the texture. What you want to do is copy each row out separately to a new row on the larger texture.
[QUOTE=robmaister12;35737693]
Just .NET for Windows and just Mono for Linux/Mac.[/QUOTE]
Hmm, I messed around yesterday not seeing your post and figured out that unless I set my program to Windows XP compatibility, it wouldn't run. If I ran the program through Mono Command Prompt, however, it always worked.
So now I'm wondering if this is just a Windows 7 thing or do all of my users have to download Mono and use the program through the command prompt.
Having some C trouble.
In my header I have:
[CODE]typedef struct coin
{
unsigned qty;
unsigned value; /* Stored in cents (not dollars). */
} CoinType;[/CODE]
Populating with:
[CODE]CoinType database[5];
database[0].value = 200;
database[1].value = 100;
database[2].value = 50;
database[3].value = 20;
database[4].value = 10;
database[5].value = 5;[/CODE]
When I try and print the contents of my struct in a separate function with:
[CODE]CoinType * database[5];
printf("%d\n", database[1]->value);[/CODE]
it outputs: 4199104
I am guessing this is the memory address?
I am trying to change my game to use components, and am dividing things into attributes (values that multiple behaviors use) and behaviors (basically functions). What I have run into trouble with is declaring attributes. I should have a class that is the base of attributes, however I'm not sure how that would work. I am thinking I only need one class for attributes, which will hold a name and a void pointer that will point to a type defined at creation (such as string or int). Would this work?
Edit: I forgot about templates, this would make everything easier.
Edit 2: No, wait. How can I store pointers to a templated class in a vector? I seem to have to declare a type when creating the vector, which is what I don't want to do. I was thinking of creating a base attribute class and then it have a pointer to some templated data, but that just seems counter-intuitive. Is this the only way?
@robmaister/dajoh
Okay, now I can see it. I was overcomplicating it. I guess my problem is that I followed NeHe's tutorial, and the tutorial used a one-dimensional array to store the texture data.
Like this:
[cpp]// Fill in data for expanded bitmap
for(int j=0; j <height;j++)
{
for(int n=0; n < width; n++)
{
expanded_data[2*(n+j*width)]= expanded_data[2*(n+j*width)+1] = (n >= bitmap.width || j >= bitmap.rows) ? 0 : bitmap.buffer[n + bitmap.width*j];
}
}[/cpp]
This makes it a bit difficult for me to determine the separate x and y positions of the bitmap, and placing it into a two-dimensional array.
This issue is making my head hurt. :P
Edit: Actually, I guess there is a way. Simply checking if the index is over the width, and by how many times it is over.
[QUOTE=Over-Run;35724556]
How would I get it to move in the right way? As in when it gets to the end column, it moves up and proceeds left, then when it gets left it moves up and goes right. I'm sure its a simple modulus thing I have to do or something but I can't figure it out.
Any help would be much appreciated[/QUOTE]
Why not something like
[cpp]if (x == 0 || x == columns - 1)
y++;
else
x += 1 - (rownum % 2) * 2;[/cpp]
Or maybe I'm not understanding your problem...
[editline]28th April 2012[/editline]
[QUOTE=FPSMango;35729539]More of a math question than programming question, but does anyone know of a good way to make sure my game updates the same amount of times across hardware? Like that it knows the the last frametime, and only runs update() 10 times per second or so. Regardless if the framerate is 1000 or 60.(This would be easy to make but the problem is with a non stable framerate)[/QUOTE]
The implementation depends on the language, but all you need is some kind of clock function with a good resolution. The SFML website has a tutorial that addresses your exact issue, but here's the idea:
1. Store the time
2. Begin Loop
3. Subtract current time from stored time
4. Compare the difference to some constant
5. If greater, store the current time and run update()
6. Otherwise, do nothing this frame.
7. Goto 2
The constant in step 4 will be the reciprocal of the frequency of the update(). E.g. 0.10 seconds if you want it to update 10 times/sec.
Additionally, if you want some kind of smooth movement, like moving a box 10 pixels/sec or something, just multiply by the time difference since the last update to get constant speed across all hardware.
[QUOTE=Blueridge;35742649]Hmm, I messed around yesterday not seeing your post and figured out that unless I set my program to Windows XP compatibility, it wouldn't run. If I ran the program through Mono Command Prompt, however, it always worked.
So now I'm wondering if this is just a Windows 7 thing or do all of my users have to download Mono and use the program through the command prompt.[/QUOTE]
Mono and .NET output the same IL, .NET can run code output by Mono and Mono can run code output by .NET. Unless there's something very specific that Mono has that .NET doesn't that you're using, you shouldn't make Windows users download a second implementation of the CLR.
An XP compatibility mode setting shouldn't be necessary, if you're compiling on Linux, make sure you have the latest version of Mono, 2.10, and that you're compiling the windows version with xbuild. Try compiling from Visual Studio to see if you still need compatibility mode.
[QUOTE=robmaister12;35745720]Mono and .NET output the same IL, .NET can run code output by Mono and Mono can run code output by .NET. Unless there's something very specific that Mono has that .NET doesn't that you're using, you shouldn't make Windows users download a second implementation of the CLR.
An XP compatibility mode setting shouldn't be necessary, if you're compiling on Linux, make sure you have the latest version of Mono, 2.10, and that you're compiling the windows version with xbuild. Try compiling from Visual Studio to see if you still need compatibility mode.[/QUOTE]
I opened up the solution in Visual C# and got 2 warnings:
[QUOTE]Warning 2 The referenced component 'Mono.CSharp' could not be found.
Warning 1 Could not resolve this reference. Could not locate the assembly "Mono.CSharp". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. AreaTest[/QUOTE]
If I try running the program regardless, Gtk.Application throws an exception here:
[cpp] class MainClass {
public static void Main (string[] args)
{
Application.Init (); // here
MainWindow win = new MainWindow ();
win.Show ();
Application.Run ();
}
}[/cpp]
If I publish the program from there, I get the same error before. I went and checked what was making it crash, and this was the contents:
[QUOTE]
Problem Event Name: CLR20r3
Problem Signature 01: areatest.exe
Problem Signature 02: 1.0.4501.20833
Problem Signature 03: 4f9c2a22
Problem Signature 04: glib-sharp
Problem Signature 05: 2.12.0.0
Problem Signature 06: 4a1c33d2
Problem Signature 07: 2b8
Problem Signature 08: 0
Problem Signature 09: System.DllNotFoundException
OS Version: 6.1.7601.2.1.0.256.1
Locale ID: 1033
Additional Information 1: 0a9e
Additional Information 2: 0a9e372d3b4ad19135b953a78882e789
Additional Information 3: 0a9e
Additional Information 4: 0a9e372d3b4ad19135b953a78882e789
[/QUOTE]
I googled CLR20r3 and found this: [URL]http://naveensrinivasan.com/2010/11/16/clr20r3/[/URL] but the entire posting just flew over my brain.
-snip-
[cpp]void TerrainWindow::Draw()
{
sf::Image dot;
dot.LoadFromFile("dot.jpg");
sf::Sprite sinWave;
sinWave.SetImage(dot);
float x, y;
for(int i = 0; i < 300; i++)
{
y = 10.0f * sin(3.0f + i);
x += i;
sinWave.SetPosition(x, y);
Wnd.Draw(sinWave);
}
}
void TerrainWindow::TerrainWindowLoop()
{
TerrainWindow::Draw();
while(GetState())
{
Wnd.Display();
}
}[/cpp]
The window opens, but then it crashes.
[QUOTE=Blueridge;35746339]I opened up the solution in Visual C# and got 2 warnings:
If I try running the program regardless, Gtk.Application throws an exception here:
class MainClass { public static void Main (string[] args) { Application.Init (); // here MainWindow win = new MainWindow (); win.Show (); Application.Run (); } }
If I publish the program from there, I get the same error before. I went and checked what was making it crash, and this was the contents:
I googled CLR20r3 and found this: [URL]http://naveensrinivasan.com/2010/11/16/clr20r3/[/URL] but the entire posting just flew over my brain.[/QUOTE]
Alright I figured out that apparently, I need to include a dll file. How do I check what Dll file I need to include into the references?
EDIT: Gave the program to a friend and he couldn't run the program on his copy of Windows 7, even in compatibility.
[QUOTE=Blueridge;35750896]Alright I figured out that apparently, I need to include a dll file. How do I check what Dll file I need to include into the references?
EDIT: Gave the program to a friend and he couldn't run the program on his copy of Windows 7, even in compatibility.[/QUOTE]
Apparently GTK# depends on some Mono libraries, you can distribute a dll that contains only the necessary sections: [url]http://www.mono-project.com/Gtk-Sharp_Installer_for_.NET_Framework[/url]
[QUOTE=Meatpuppet;35750750][cpp]void TerrainWindow::Draw()
{
sf::Image dot;
dot.LoadFromFile("dot.jpg");
sf::Sprite sinWave;
sinWave.SetImage(dot);
float x, y;
for(int i = 0; i < 300; i++)
{
y = 10.0f * sin(3.0f + i);
x += i;
sinWave.SetPosition(x, y);
Wnd.Draw(sinWave);
}
}
void TerrainWindow::TerrainWindowLoop()
{
TerrainWindow::Draw();
while(GetState())
{
Wnd.Display();
}
}[/cpp]
The window opens, but then it crashes.[/QUOTE]I think you need to handle the events to make it not crash.
I'm working on changing my game to be component based rather than inheritence based, and I'm not sure if it's supposed to look like this.
[img]http://dl.dropbox.com/u/8414553/uhisthisright.png[/img]
As in, am I supposed to have to static_cast this much and have this many classes or am I missing something?
I'm back to Facepunch for help with Java again!
[lua]/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package lab3;
/**
*
* @author seni0020
*/
import javax.swing.JFrame;
public class Main
{
/**
* @param args the command line arguments
*/
public static void main(String[] args)
{
JFrame frame = new JFrame ("Lab3");
frame.setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(new InnerPanel ());
frame.pack();
frame.setVisible(true);
}
}
[/lua]
[lua]/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package lab3;
/**
*
* @author seni0020
*/
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class InnerPanel extends JPanel
{
private JButton lexi, alpha;
private JLabel label1, label2;
private JTextField inPut1, inPut2;
private String inPutString1, inPutString2, output = "";
public InnerPanel()
{
label1 = new JLabel ("Enter the two words which you wish to compare:");
inPut1 = new JTextField ();
inPut1.addActionListener (new inPut1Listener());
inPut1.setPreferredSize(new Dimension(140, 20));
inPut2 = new JTextField ();
inPut2.addActionListener (new inPut2Listener());
inPut2.setPreferredSize(new Dimension(140, 20));
lexi = new JButton ("Lexicographical");
lexi.addActionListener (new lexiListener());
alpha = new JButton ("Alphabetical");
alpha.addActionListener (new lexiListener());
label2 = new JLabel (output);
add (label1);
add (inPut1);
add (inPut2);
add (lexi);
add (alpha);
add (label2);
setPreferredSize (new Dimension(300, 150));
setBackground (Color.LIGHT_GRAY);
}
private class inPut1Listener implements ActionListener
{
public void actionPerformed (ActionEvent event)
{
inPutString1 = inPut1.getText();
}
}
private class inPut2Listener implements ActionListener
{
public void actionPerformed (ActionEvent event)
{
inPutString2 = inPut2.getText();
}
}
public class lexiListener implements ActionListener
{
public void actionPerformed (ActionEvent event)
{
int check = inPutString1.compareTo(inPutString2);
if (check < 0)
{
label2.setText (inPutString2 + " is greater than " + inPutString1);
}
else
{
if (check == 0)
{
label2.setText (inPutString1 + " is equal to " + inPutString1);
}
else
{
label2.setText (inPutString1 + " is greater than " + inPutString1);
}
}
}
}
private class alphaListener implements ActionListener
{
public void actionPerformed (ActionEvent event)
{
int check = inPutString2.compareToIgnoreCase(inPutString1);
if (check < 0)
{
label2.setText (inPutString2 + " is greater than " + inPutString1);
}
else
{
if (check == 0)
{
label2.setText (inPutString1 + " is equal to " + inPutString1);
}
else
{
label2.setText (inPutString1 + " is greater than " + inPutString1);
}
}
}
}
}
[/lua]
Basicly the code is supposed to compare two words alphabeticly and lexicographicly, but I keep getting some sort of error on line 74
The error log:
[code]run:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at lab3.InnerPanel$lexiListener.actionPerformed(InnerPanel.java:74)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
at java.awt.Component.processMouseEvent(Component.java:6505)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
at java.awt.Component.processEvent(Component.java:6270)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2713)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:707)
at java.awt.EventQueue.access$000(EventQueue.java:101)
at java.awt.EventQueue$3.run(EventQueue.java:666)
at java.awt.EventQueue$3.run(EventQueue.java:664)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:680)
at java.awt.EventQueue$4.run(EventQueue.java:678)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:677)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
[/code]
Sorry, you need to Log In to post a reply to this thread.