Eu presisava fazer algo parecido com isto.
Já baixei esse projeto mas o .jar nem abre, peguei o .java que vem junto e joguei no eclipse e o eclipse acusa erro nesse trecho:
Tenho o java 7. Na dúvida coloquei o java 6u10 e nada, então voltei para o java 7.
importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;importjavax.swing.event.*;publicclassAberturaextendsJPanel{privateJButtonjcomp1;publicAbertura(){//construct componentsjcomp1=newJButton("newButton");//adjust size and set layoutsetPreferredSize(newDimension(624,541));setLayout(null);com.sun.awt.AWTUtilities.setWindowOpacity(this,0,5);// AQUI dá erro, estou tentando deixar a tela com 50% transparente//add componentsadd(jcomp1);//set component bounds (only needed by Absolute Positioning)jcomp1.setBounds(270,260,100,25);}publicstaticvoidmain(String[]args){JFrameframe=newJFrame("MyPanel");frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.getContentPane().add(newAbertura());frame.pack();frame.setVisible(true);}}
T
thingol
O número 1/2 tem de ser escrito em Java como “0.5”, não “0,5”. Cuidado…
C
Carlos.java
Troque este comando.
com.sun.awt.AWTUtilities.setWindowOpacity(this, 0,5);
por este.
com.sun.awt.AWTUtilities.setWindowOpacity(this,(float) 0.5);
ira funcionar legal.
G
gqferreira
Hehe…
foi mau, esqueci de substituir “,” por “.”
:oops: :oops: :oops: :oops: :oops:
G
gqferreira
Tem que importar algo?
Cotinua dando erro naquela linha :x :x :x
Ola companheiro, então deixa eu t pergunta uma coisa essa classe "abertura " ela chama o “frame”?
Se sim então acho q este comando esta no lugar errado acho q ele deveria estar la no frame aki testei ele direto no frame e funciono legal .
G
gqferreira
Não…É só nome…
Fiz uma telinha rapidinho em um programinha de gerar interface só pra testar se dá certo o lance de deixar transparente.
M
marcobiscaro2112
Acontece que o método funciona quanto se passa um Window como argumento, e não um JPanel. Sua transparência deve ser alterada no método main, passando o objeto frame como parâmetro. Algo como:
importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;importjavax.swing.event.*;publicclassAberturaextendsJPanel{privateJButtonjcomp1;publicAbertura(){//construct componentsjcomp1=newJButton("newButton");//adjust size and set layoutsetPreferredSize(newDimension(624,541));setLayout(null);//add componentsadd(jcomp1);//set component bounds (only needed by Absolute Positioning)jcomp1.setBounds(270,260,100,25);}publicstaticvoidmain(String[]args){JFrameframe=newJFrame("MyPanel");frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.getContentPane().add(newAbertura());frame.pack();frame.setVisible(true);com.sun.awt.AWTUtilities.setWindowOpacity(frame,0.5f);}}
G
gqferreira
marcobiscaro2112…
vc rodou essa classe e funcionou?
Eu dei um control+chup dessa sua correção e dá erro naquela mesma linha em que te falei…
Por isso estou achando estranho… todos dizem a mesma maneira de resolver, mas comigo isso nunca funciona…
J
javaJoni
:-oAmigo, quer um conselho?
Esquece o Eclipse!!! :!: :!:
Parte para o NetBeans.
Aqui p/ mim tb funcionou direitinho, sem erro.
NetBeans é o melhor.
M
marcobiscaro2112
javaJoni:
:-oAmigo, quer um conselho?
Esquece o Eclipse!!! :!: :!:
Parte para o NetBeans.
Aqui p/ mim tb funcionou direitinho, sem erro.
NetBeans é o melhor.
É muito fácil achar que trocando de IDE seus problemas serão resolvidos… e escolher o Netbeans que gera um código para swing quase que incompreesível? Não é a resposta. Use Eclipse, estou 100% satisfeito e sim, funcionou perfeitamente. Segue a imagem da aplicação e o código:
importjava.awt.Dimension;importjavax.swing.JButton;importjavax.swing.JFrame;importjavax.swing.JPanel;importcom.sun.awt.AWTUtilities;publicclassAberturaextendsJPanel{privatestaticfinallongserialVersionUID=1L;privateJButtonjcomp1;publicAbertura(){// construct componentsjcomp1=newJButton("newButton");// adjust size and set layoutsetPreferredSize(newDimension(624,541));setLayout(null);// add componentsadd(jcomp1);// set component bounds (only needed by Absolute Positioning)jcomp1.setBounds(270,260,100,25);}publicstaticvoidmain(String[]args){JFrameframe=newJFrame("MyPanel");frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.getContentPane().add(newAbertura());frame.pack();frame.setVisible(true);AWTUtilities.setWindowOpacity(frame,0.5f);}}
Pergunta: gqferreira, você tem o JDK mais atual instalado? Se não me engano, esse recurso só está disponível a partir do Java 1.6. Verifique isso. Quanto a execução, foi perfeito. Veja:
Qual versão do Java você usa??
Qual a última verssão?
M
marcobiscaro2112
A última versão estável e oficial é a 1.6 update 11 (essa que eu uso), mas como você já sabe, essa versão “beta” do JDK 1.7 já pode ser baixada. Veja se a classe AWTUtilities realmente existe em algum dos JARs que vem com o JDK. No meu caso, por exemplo, ela vem em um JAR chamado ‘rt.jar’, como na imagem. Certifique-se que essa classe existe nessa distribuição que está usando, pois é exatamente isso que o Eclipse acusa: que não reconhece a class (nem mesmo o pacote!).
Caros colegas, opinião sobre a melhor IDE é como *… :XD:
Cada um tem um.
Quanto ao “código quase incompreensível do Swing” eu não concordo, pois qualquer um que conheça um pouco de Java consegue ver o que o código está fazendo e os pacotes que está acessando. De qualquer forma se vc usa a parte visual do NetBeans, não precisa se preocupar com a legibilidade do código gerado, pois foi vc mesmo que o escolheu quando arrastou um componente para o container.
NetBeans, a única IDE que você precisa.
Desculpem,
Não levem a mal…
G
gqferreira
Eh… acho que essa versão que eu tinha não era a mais nova… peguei no baixaki e dizia ser a versão 1.7. Peguei uma no site da sun, java 6 update 11 e deu certo…
Desculpa aê gente pela burrice… :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: :oops: