Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Не отображается Japplet :( 
:(
    Опции темы
G00dWINe
Дата 16.3.2012, 18:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 16.3.2012

Репутация: нет
Всего: нет



Здрасте!
Такая вот насущая проблема: не отображается апплет.
Вот его код:

Код

import java.awt.*;
import java.awt.event.*;
import java.applet.Applet;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.net.ConnectException;
import javax.swing.*;
import java.io.File;

import javax.swing.*;

//import listfiles.java;

public class ftp_gui extends JApplet implements ActionListener {
    String file2;
    Label label_1;
    TextField text_ip;
    TextField textfield_1;
    TextField textfield_2;
    Button button_4;
    Button button_5;
    TextArea fileslist;
    Button button_6;
    TextField chooser_upload;
    TextField chooser_download;
    Button button_2;
    TextArea textarea_2;
    Label label_3;
    
    private JFileChooser dialog;

    public void init() {
        ftpLayout customLayout = new ftpLayout();

        getContentPane().setFont(new Font("Helvetica", Font.PLAIN, 12));
        getContentPane().setLayout(customLayout);
        
     //   setBounds(0,0,500,500);
        dialog = new JFileChooser();

        label_1 = new Label("FTP client by Egorov v 2.4");
        getContentPane().add(label_1);

        text_ip = new TextField("192.168.0.104");
        getContentPane().add(text_ip);

        textfield_1 = new TextField("test");
        getContentPane().add(textfield_1);

        textfield_2 = new TextField("123");
        getContentPane().add(textfield_2);

        button_4 = new Button("Get file's list");
        getContentPane().add(button_4);
        button_4.addActionListener(this);
        
        button_5 = new Button("Upload");
        getContentPane().add(button_5);
        button_5.addActionListener(this);

        fileslist = new TextArea("List of Files");
        getContentPane().add(fileslist);

        button_6 = new Button("Choose it");
        getContentPane().add(button_6);
        button_6.addActionListener(this);

        chooser_upload = new TextField("File for upload");
        getContentPane().add(chooser_upload);

        chooser_download = new TextField("File for download");
        getContentPane().add(chooser_download);

        button_2 = new Button("Download");
        getContentPane().add(button_2);
        button_2.addActionListener(this);
        
        textarea_2 = new TextArea("Hello, user! :)  \n");
        getContentPane().add(textarea_2);

        label_3 = new Label("Console");
        getContentPane().add(label_3);
        
        setSize(getPreferredSize());
    }

    public static void main(String args[]) {
        ftp_gui applet = new ftp_gui();
        JFrame window = new JFrame("ftp");

        window.addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent e) {
                System.exit(0);
            }
        });

        applet.init();
        window.getContentPane().add("Center", applet);
        window.pack();
        window.setVisible(true);
        
        
    }

    @Override
    public void actionPerformed(ActionEvent ae) {
        // TODO Auto-generated method stub
        
         String str = ae.getActionCommand();
     String IP, log, pw, fnamed;
         if (str.equals("Get file's list")) {
             IP = text_ip.getText();
             log = textfield_1.getText();
             pw = textfield_2.getText();
             String[] RESULT = listfiles.GetList(IP,log,pw,"");
             textarea_2.append(listfiles.zzz + "\n");
             //textarea_2.setText("\n");
             fileslist.setText("List of Files: \n \n");
             for (int i=0;i<RESULT.length;i++)
             {
                 fileslist.append("File = " + RESULT[i]);
                 fileslist.append("\n");
             }
         }
         if (str.equals("Download")) {
             IP = text_ip.getText();
             log = textfield_1.getText();
             pw = textfield_2.getText();
             fnamed = chooser_download.getText();
             System.out.println(fnamed);
             //System.out.println(123);
             
                    try {
                        download.downloadfile (IP, log, pw, fnamed);
                        textarea_2.append(download.zzz + "\n");
                    } catch (Exception e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                        System.out.println("Wrong IP");
                    }
         }
         
         if (str.equals("Upload")) {
             IP = text_ip.getText();
             log = textfield_1.getText();
             pw = textfield_2.getText();
             fnamed = chooser_upload.getText();
             System.out.println(fnamed);
             //System.out.println(123);
             
                    try {
                        upload.UploadFileOnFtp(IP, log, pw, file2, fnamed);
                        textarea_2.append(upload.zzz + "\n");
                    } catch (Exception e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
         }
         
         if (str.equals("Choose it")) {
                dialog.showOpenDialog(this);
                File file =dialog.getSelectedFile();
              //  String fff = file.getAbsolutePath();
                chooser_upload.setText(file.getAbsolutePath());
                file2 = file.getName();
                setVisible(true);
           //     System.out.println(file);
           //     System.out.println(file2);
                
         }
    

         
//         if (str.equals("Upload")) {
//             System.out.println("123");
    //     }
        
    }
}

class ftpLayout implements LayoutManager {

    public ftpLayout() {
    }

    public void addLayoutComponent(String name, Component comp) {
    }

    public void removeLayoutComponent(Component comp) {
    }

    public Dimension preferredLayoutSize(Container parent) {
        Dimension dim = new Dimension(0, 0);

        Insets insets = parent.getInsets();
        dim.width = 550 + insets.left + insets.right;
        dim.height = 312 + insets.top + insets.bottom;

        return dim;
    }

    public Dimension minimumLayoutSize(Container parent) {
        Dimension dim = new Dimension(0, 0);
        return dim;
    }

    public void layoutContainer(Container parent) {
        Insets insets = parent.getInsets();

        Component c;
        c = parent.getComponent(0);
        if (c.isVisible()) {c.setBounds(insets.left+168,insets.top+8,208,24);}
        c = parent.getComponent(1);
        if (c.isVisible()) {c.setBounds(insets.left+8,insets.top+8,112,24);}
        c = parent.getComponent(2);
        if (c.isVisible()) {c.setBounds(insets.left+8,insets.top+40,112,24);}
        c = parent.getComponent(3);
        if (c.isVisible()) {c.setBounds(insets.left+8,insets.top+72,112,24);}
        c = parent.getComponent(4);
        if (c.isVisible()) {c.setBounds(insets.left+424,insets.top+264,72,24);}
        c = parent.getComponent(5);
        if (c.isVisible()) {c.setBounds(insets.left+104,insets.top+160,72,24);}
        c = parent.getComponent(6);
        if (c.isVisible()) {c.setBounds(insets.left+392,insets.top+56,136,200);}
        c = parent.getComponent(7);
        if (c.isVisible()) {c.setBounds(insets.left+8,insets.top+160,80,24);}
        c = parent.getComponent(8);
        if (c.isVisible()) {c.setBounds(insets.left+8,insets.top+128,192,24);}
        c = parent.getComponent(9);
        if (c.isVisible()) {c.setBounds(insets.left+8,insets.top+192,192,24);}
        c = parent.getComponent(10);
        if (c.isVisible()) {c.setBounds(insets.left+56,insets.top+224,72,24);}
        c = parent.getComponent(11);
        if (c.isVisible()) {c.setBounds(insets.left+224,insets.top+80,120,176);}
        c = parent.getComponent(12);
        if (c.isVisible()) {c.setBounds(insets.left+248,insets.top+48,72,24);}
    }
}


Но это код графической части, то бишь самого апплета.
Есть ещё некоторые класс-файлы, содержащие функции, которые использованы в коде, что я написал выше.

Так вот, всё для простоты закинул в default package.
Для теста добавил туды ещё один апплет (но он просто Applet!).

Так вот, создаю html файлик с кодом: 
<html><body><applet code="ftp_gui.class" width=550 height=312></applet></body></html>

И это дело отображает мне пустой белый экран =\

А вот запускаю другой апплет (который сунул для теста - дак там всё норм, всё работает =\
В чём может быть проблема?


Очень сильно жду ответа, т.к завтра надо сдавать работу.
Заранее спасибо.

PM MAIL   Вверх
G00dWINe
Дата 16.3.2012, 20:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 16.3.2012

Репутация: нет
Всего: нет



Непонятная вещь...
Переписал программу: сделал так, чтобы все классы были в одном файле - не помогло...
PM MAIL   Вверх
Mirkes
Дата 17.3.2012, 20:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 586
Регистрация: 18.8.2011
Где: Красноярск

Репутация: нет
Всего: 17



А что выводит в консоль? Может возникли ошибки? Подчем-нибудь работает?


--------------------
Mirkes
PM MAIL   Вверх
G00dWINe
Дата 13.4.2012, 15:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 3
Регистрация: 16.3.2012

Репутация: нет
Всего: нет



Щас напишу...

Добавлено через 8 минут и 8 секунд
Код

Exception in thread "AWT-EventQueue-2" java.lang.ArrayIndexOutOfBoundsException: No such child: 0
    at java.awt.Container.getComponent(Unknown Source)
    at ftp_gui.ftpLayout.layoutContainer(ftp_gui.java:214)
    at java.awt.Container.layout(Unknown Source)
    at java.awt.Container.doLayout(Unknown Source)
    at java.awt.Container.validateTree(Unknown Source)
    at java.awt.Container.validateTree(Unknown Source)
    at java.awt.Container.validateTree(Unknown Source)
    at java.awt.Container.validateTree(Unknown Source)
    at java.awt.Container.validateTree(Unknown Source)
    at java.awt.Container.validate(Unknown Source)
    at sun.plugin.util.GrayBoxPainter$2.run(Unknown Source)
    at java.awt.event.InvocationEvent.dispatch(Unknown Source)
    at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
    at java.awt.EventQueue.access$000(Unknown Source)
    at java.awt.EventQueue$1.run(Unknown Source)
    at java.awt.EventQueue$1.run(Unknown Source)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
    at java.awt.EventQueue.dispatchEvent(Unknown Source)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
    at java.awt.EventDispatchThread.run(Unknown Source)
java.security.AccessControlException: access denied (java.io.FilePermission C:\Users\Вячеслав\Documents read)
    at java.security.AccessControlContext.checkPermission(Unknown Source)
    at java.security.AccessController.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkPermission(Unknown Source)
    at java.lang.SecurityManager.checkRead(Unknown Source)
    at java.io.File.exists(Unknown Source)
    at java.io.Win32FileSystem.canonicalize(Unknown Source)
    at java.io.File.getCanonicalPath(Unknown Source)
    at sun.awt.shell.Win32ShellFolderManager2.createShellFolder(Unknown Source)
    at sun.awt.shell.Win32ShellFolderManager2.getPersonal(Unknown Source)
    at sun.awt.shell.Win32ShellFolderManager2.get(Unknown Source)
    at sun.awt.shell.ShellFolder.get(Unknown Source)
    at javax.swing.filechooser.FileSystemView.getDefaultDirectory(Unknown Source)
    at javax.swing.JFileChooser.setCurrentDirectory(Unknown Source)
    at javax.swing.JFileChooser.<init>(Unknown Source)
    at javax.swing.JFileChooser.<init>(Unknown Source)
    at ftp_gui.ftp_gui.init(ftp_gui.java:42)
    at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
    at java.lang.Thread.run(Unknown Source)
Exception: java.security.AccessControlException: access denied (java.io.FilePermission C:\Users\Вячеслав\Documents read)


Это сообщение отредактировал(а) G00dWINe - 13.4.2012, 15:57
PM MAIL   Вверх
LSD
Дата 13.4.2012, 17:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15708
Регистрация: 24.3.2004

Репутация: 9
Всего: 537



Чтобы апплет мог читать данные с диска, его надо подписать.


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
cupoma58
Дата 22.8.2017, 12:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


ищущий



Профиль
Группа: Awaiting Authorisation
Сообщений: 31
Регистрация: 3.3.2017

Репутация: нет
Всего: нет



Код

 public static void main(String[] args)
 {
  JApplet applet = new Name();
  JFrame frame = new JFrame("...");
  frame.addWindowListener(new WindowAdapter() 
  {
   public void windowClosing(WindowEvent we){System.exit(0);}
  });
  frame.add(applet);
  frame.setSize(0, 0);
  applet.init();
  applet.start(); <---------------- помоему - этого нет
  frame.setVisible(true);  
 }

дбавить апплет :
Код

<script language="Javascript">
var bros = navigator.appName;
if (bros == 'Opera') 
{document.write('<applet code="file.class"','archive="/.jar"','width="350"','height="250"','type="application/x-java-applet;version=1.7.0">');}
else if (bros == 'Netscape') 
{document.write('<embed code="file.class"','archive="/.jar"','width="350"','height="250"','type="application/x-java-applet;version=1.7.0">');}
else if (bros == 'Microsoft Internet Explorer') 
{document.write('<object ','classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"','width="350"','height="250">','<param name="code" value="file.class">','<param name="archive" value="/.jar">','</object>');}
else {document.write('<font color="cc3333">Sorry, не тот браузер.</font>');}
</script>

Апплет с чусером, без подписи (http://cupoma58.ru/java_6.html) ни один браузер не пропустит.
                                                                         smile 
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: Апплеты | Следующая тема »


 




[ Время генерации скрипта: 0.1521 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.