Interface + Compactador Como chamar a classe? HELP

3 respostas
W

Galera estou fazendo um trabalho pra facu, e tenhu que entrega hoje! Fiz de tudo pra tenta aprender java ¬¬ mas ta osso!!!

tenhu muita dificuldade...

Projeto: Compactador/ descompactador

Problema: Conseguir fazer o compactadore a interface... Mas não tenhu nem ideia como fazer a minha interface chamar a classe compactador !! Para que meu programa fique correto!!

Por favor Alguem pode me ajudar!!!

Vou enviar os codigos

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class MenuPrincipal extends JFrame implements ActionListener{
	JMenuBar M1;
	JMenu Compac, Descompac, Msair ,Informacao; //menu principal é jmenu

	 JMenuItem  Sobre, compactador, descompactador, sobre, fechar; // sub menu é jmenuItem
	MenuPrincipal(){
			//definindo a aparencia do frame
			setTitle("Compactador e Descompactador");
			getContentPane().setBackground(Color.GRAY);
			setExtendedState(MAXIMIZED_BOTH);
			
			//criando a barra de menus essa linha não muda
			M1 = new JMenuBar();
			//criando os menus , esse  é o menu principal que aparece na tela, é aqui que tem que alterar de acordo como que pedir o programa
			Compac = new JMenu("Compactador");  
			Descompac = new JMenu("Descompactador");
			Informacao = new JMenu ("Informação do Grupo");
			Msair = new JMenu ("Sair doPrograma");
	
			
			
			//criando os sub menus CADASTRO...o que esta dentro do menu..essas são as classes as serem criadas;
			compactador = new JMenuItem ("Compactar");//cria um item
			compactador.addActionListener(this);   /* faz  a ação do botão*/

			//adicionando ao menu Cadastros
			Compac.add(compactador);//adiciona o item ao menu
			
			//adicionando ao menu Sair
			fechar = new JMenuItem ("Sair");
			fechar.addActionListener(this);
			Msair.add(fechar);//adiciona o item ao menu

			//criando novos items de menu CONSULTA
			descompactador = new JMenuItem ("Descompactar");
			descompactador.addActionListener(this);
			
			
			//adicionando os items ao menu de consultas
			Descompac.add(descompactador);
	
		
			//criando os items do menu Sobre
			sobre= new JMenuItem ("Sobre");
			sobre.addActionListener(this);
			Informacao.add(sobre);
		
			//criando os items do m
			
			////adicionando  os menus na barra de menus
			M1.add(Compac);
			M1.add(Descompac);	
			M1.add(Informacao);
			M1.add(Msair);
			setJMenuBar(M1);//define a barra de menus como padrao
			setDefaultCloseOperation(EXIT_ON_CLOSE);
		
	}
	public void actionPerformed(ActionEvent e){
			
			
			if (e.getSource()==sobre){
				Sobre t1 = new Sobre(); 
		    	t1.setVisible(true); 
				
			}
			if (e.getSource()== fechar){		
				System.exit(0);
			}
				
			}


	public static void main(String args[]){ //manter essa parte, sem isso o programa não aparecena tela
		MenuPrincipal menu=new MenuPrincipal();
		menu.setVisible(true); 
	}
}
import java.io.*;
import java.util.zip.*;

public class Zipando {

// tamanho de leitura maximo
	static final int TAM_BUFFER = 1024 ;
	public static String saida="";

public static boolean TestaExistencia(String arquivo){
File arq = new File(arquivo);
return arq.exists();
}//metodo testa existencia previa de arquivo

public static void zipa(String outFileZip, String inFileZip,int escolheu){
int i, cont;

try{

File f = null;

FileInputStream fileinput = null;
FileOutputStream fileoutput = null;
BufferedInputStream buffer = null;
ZipOutputStream zipar = null;
ZipEntry entry = null;
byte[] dados = new byte[TAM_BUFFER];


fileoutput = new FileOutputStream(outFileZip);
zipar = new ZipOutputStream(new BufferedOutputStream(fileoutput));

// arquivo
if (escolheu == 1){


f = new File(inFileZip); // nome arquivo digitado

if (f.isFile() && !(f.getName()).equals(fileoutput)){
System.out.println("Compactando: " + f);

fileinput = new FileInputStream(f);
buffer = new BufferedInputStream(fileinput,TAM_BUFFER);
entry = new ZipEntry(inFileZip);
zipar.putNextEntry(entry);

while((cont = buffer.read(dados, 0, TAM_BUFFER)) != -1) {
zipar.write(dados, 0, cont);
}//while
buffer.close();

}// if

zipar.close();


}else
//pasta
if (escolheu == 2) {
System.out.print("\n");
String[] arquivos;

f = new File("."); // todos os arquivos da pasta atual
arquivos = f.list();

for (i = 0; i<(arquivos.length-1); i++) {
File arquivo = new File(arquivos[i]);

if (arquivo.isFile() && !(arquivo.getName()).equals(fileoutput)) {
System.out.println("Compactando: " + arquivos[i]);

fileinput = new FileInputStream(arquivo);
buffer = new BufferedInputStream(fileinput,TAM_BUFFER);
entry = new ZipEntry(arquivos[i]);
zipar.putNextEntry(entry);

while((cont = buffer.read(dados, 0, TAM_BUFFER)) != -1) {
zipar.write(dados, 0, cont);
}
buffer.close();
}
}
zipar.close();

}// if 2

}

catch(FileNotFoundException mensagem){
System.out.println("\nArquivo nao encontrado!");
System.out.println("Caso o arquivo esteja em outro diretorio, favor digitar o caminho completo.\n\n");
}
catch(IOException e){
System.out.println("Erro na entrada de dados "+e.toString());
}
catch(Exception e){
e.printStackTrace();
}//

}// metodo para zipar

public static void main(String argumento[]){

//zipa("Nome do zip. E local a ser salvo","arquivos a serem zipados"),1);

zipa("c:\\compactador\\flavio.zip","c:\\flavio\\134.jpg",1);
System.out.print("\nArquivo zipado com sucesso!\n\n");

}

}//classe

3 Respostas

F

é bom passar o código da classe Sobre

W

A classe sobre está ai! ALGUEM ME AJUDA PLZ

import java.awt.*;
import java.awt.event.*;

import javax.swing.*;

public class Sobre extends JFrame implements ActionListener {
	JLabel lblNome01, lblNome02, lblNome03, lblNome04, lblRA01 , lblRA02, lblRA03,  lblRA04, lblTurma,lblPeriodo,lblCurso, lblFacul;
	JButton  btnSair;

	Sobre() {
		
		setTitle("Sobre");
		setBounds(400,300,450,250);
		setResizable(false);
	    getContentPane().setLayout(new GridLayout(7,1));	    	
	    lblNome01 = new JLabel("Nome:Flavio de Moura ");
	    lblRA01 = new JLabel("RA:928189-4 ");
	    lblNome02 = new JLabel("Nome:Wesley ");
	    lblRA02 = new JLabel("RA:xxxxxx-x ");
	    lblNome03 = new JLabel("Nome:Rodrigo Nakada ");
	    lblRA03 = new JLabel("RA:zzzzzz-z ");
	    lblNome04 = new JLabel("Nome: Murilo Ruano ");
	    lblRA04 = new JLabel("RA:yyyyyy-y ");
	    	    
	    lblTurma = new JLabel("Turma: CC6Q41 ");
	    lblPeriodo = new JLabel("Periodo: Noturno ");
	    lblCurso = new JLabel("Curso: Ciências da Computação ");
	    lblCurso = new JLabel("Faculdade: Unip ");
	    btnSair      = new JButton("Sair");		
	    
	    getContentPane().add( lblNome01);
	    getContentPane().add(lblRA01);
	    getContentPane().add( lblNome02);
	    getContentPane().add(lblRA02);
	    getContentPane().add( lblNome03);
	    getContentPane().add(lblRA03);
	    getContentPane().add( lblNome04);
	    getContentPane().add(lblRA04);
	    getContentPane().add(lblTurma);
	    getContentPane().add(lblPeriodo);
	    getContentPane().add( lblCurso);
	    getContentPane().add( lblCurso);
	    getContentPane().add(btnSair  );
	    
	    
		btnSair.addActionListener(this);
		setDefaultCloseOperation(HIDE_ON_CLOSE);
	}	
	public void actionPerformed(ActionEvent evt) {
		if (evt.getSource()==btnSair)   
		        this.setVisible(false);
		
	}

	
	
}
brunosupremo

wzulu:

Problema: Conseguir fazer o compactadore a interface… Mas não tenhu nem ideia como fazer a minha interface chamar a classe compactador !! Para que meu programa fique correto!!

Você deve usar um action listener nos botões que irão executar alguma ação. Mais ou menos assim:

seuBotao.addActionListener(this);

Ai no metodo actionPerformed() você adiciona um if perguntando se o botão foi clicado, e caso positivo chama o metodo para zipar ou qualquer outro metodo que você queira:

if (e.getSource() == seuBotao) umMetodoQualquer();

Criado 26 de outubro de 2010
Ultima resposta 28 de out. de 2010
Respostas 3
Participantes 3