Βοηθεια για Full screen σε Java applet

...του ubuntu και έργων ΕΛ/ΛΑΚ (Έργα-Οδηγοί-Προτάσεις)

Συντονιστής: konnn

Βοηθεια για Full screen σε Java applet

Δημοσίευσηαπό pavlosJPro » 11 Ιούλ 2013, 15:32

Γεια σας παιδια.Προσπαθω να κανω μια applet εφαρμογη.Πατωντας ενα κουμπι ανοιγει ενα νεο frame, εμφανιζει μια εικονα και το κανει full screen.Το προβλημα μου ειναι το εξης: Οταν το τρεχω με το eclipse δουλευει κανονικα οταν ομως το ανεβαζω στο site μου κανει full screen μονο το frame αλλα οχι και την εικονα.Τι μπορει να φταιει?Μπορει καποιος να με βοηθεισει?? Ευχαριστω.

Εδω εχω τα αρχεια κωδικα που χρησιμοποιω :

Αρχειο AppletFrame :
-------------------------------------------------------------------------------------

public class AppletFrame extends JApplet implements ActionListener{
SampleFrame sampleframe;
JButton launchButton;

public void init(){

launchButton = new JButton("Open Window");
getContentPane().add(launchButton);
launchButton.addActionListener(this);
}

@Override
public void actionPerformed(ActionEvent arg0) {
// TODO Auto-generated method stub
if (sampleframe == null) {

Image img = getImage(getCodeBase(),"background.png");
Image img2 = getImage(getCodeBase(),"player1.png");
sampleframe = new SampleFrame(img,img2);

launchButton.setText("Close Window");
sampleframe.addWindowListener(new WindowAdapter() {
public void windowClosed(WindowEvent evt) {
launchButton.setText("Open Window");
launchButton.setEnabled(true);
sampleframe = null;
}
});
}

else {
launchButton.setEnabled(false); // disable button while waiting
// for window to close
sampleframe.dispose();
}
}

public void destroy(){
if (sampleframe != null) {
sampleframe.dispose();
sampleframe = null;
}
}
}


Αρχειο SampleFrame
---------------------------------------------------------------

public class SampleFrame extends JFrame{
Image Back;
Image player;
boolean runStandAlone;

public static void main(String[] args) {

}

public SampleFrame(Image i1,Image i2){

Back = i1;
player = i2;

setBackground( new Color(130,50,40) );

DisplayMode displayMode;
displayMode = new DisplayMode(800, 600, 16,
DisplayMode.REFRESH_RATE_UNKNOWN);

run(displayMode);

HighLowCanvas board = new HighLowCanvas();
getContentPane().add(board);
}
class HighLowCanvas extends JPanel implements ActionListener {

String message;

boolean gameInProgress;

HighLowCanvas() {

setPreferredSize(new Dimension(130,120));
setBackground( new Color(0,120,0) );
setForeground( Color.green );
}

@Override
public void actionPerformed(ActionEvent evt) {
// TODO Auto-generated method stub
String command = evt.getActionCommand();
if (command.equals("New Game"))
repaint();
}

public void paintComponent(Graphics g) {

super.paintComponent(g);
drawCard(g, Back,player);
}

void drawCard(Graphics g, Image b,Image b2) {
g.drawImage(b, 0, 0, 800, 600, this);
g.drawImage(b2, 10, 10, 300, 250, this);
}
}

private SimpleScreenManager screen;

public void run(DisplayMode displayMode) {
setBackground(Color.black);
setForeground(Color.white);

screen = new SimpleScreenManager();
//try {
screen.setFullScreen(displayMode, this);

/*try {
Thread.sleep(DEMO_TIME);
}
catch (InterruptedException ex) { }*/
//}
// finally {
//screen.restoreScreen();
//screen.setFullScreen(displayMode, null);
//}
}
}


Αρχειο SimpleScreenManager
------------------------------------------------------------

public class SimpleScreenManager {
private JFrame frame;
private GraphicsDevice device;

/**
Creates a new SimpleScreenManager object.
*/
public SimpleScreenManager() {
GraphicsEnvironment environment =
GraphicsEnvironment.getLocalGraphicsEnvironment();
device = environment.getDefaultScreenDevice();
}

/**
Enters full screen mode and changes the display mode.
*/
public void setFullScreen(DisplayMode displayMode,
JFrame window)
{
//device.setFullScreenWindow(window);
//window.setSize(800, 600);
window.setUndecorated(true);
window.setResizable(false);
window.setVisible(true);

device.setFullScreenWindow(window);
if (displayMode != null &&
device.isDisplayChangeSupported())
{
try {
device.setDisplayMode(displayMode);
}
catch (IllegalArgumentException ex) {
// ignore - illegal mode for this device
ScreenExit();
}
}
}

/**
Returns the window currently used in full screen mode.
*/
public Window getFullScreenWindow() {
return device.getFullScreenWindow();
}

/**
Restores the screen's display mode.
*/
public void restoreScreen() {
Window window = device.getFullScreenWindow();
if (window != null) {
window.dispose();
((Frame) window).setUndecorated(false);
window.setSize(800,600);
window.setVisible(true);
}
device.setFullScreenWindow(null);
}

public void ScreenExit(){
Window window = device.getFullScreenWindow();
window.dispose();
}
}
pavlosJPro
babeTUX
babeTUX
 
Δημοσιεύσεις: 1
Εγγραφή: 11 Ιούλ 2013, 15:02
Εκτύπωση

Re: Βοηθεια για Full screen σε Java applet

Δημοσίευσηαπό lepidas » 11 Ιούλ 2013, 15:35

θα πρέπει να γνωρίζεις οτι κωδικας μπαίνει μεσα σε code tags - για καλύτερη διευκόλυνση όλων κάνε edit το post σου και βάλε το όπως πρέπει

Τον κώδικα τον βάζουμε μέσα σε [cοde]κώδικας[/cοde]. Επιλέγουμε το κείμενο και πατάμε το κουμπάκι Εικόνα.

Άβαταρ μέλους
lepidas
superbTUX
superbTUX
 
Δημοσιεύσεις: 3326
Εγγραφή: 11 Μάιος 2011, 11:10
Εκτύπωση


Επιστροφή στο Ανάπτυξη Λογισμικού / Αλγόριθμοι