Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - 1mpuls0

#1341
Por lo menos a mi no me pasa nada extraño con el JTextArea :)
Si gustas te mando el ejemplo pero em... como le hago??  :xD




#1342
Para cambiar el fondo del JTextPane (y de muchos otros componentes) se utiliza el metodo setBackground(Color) [Si es que te refieres a eso]


miJTextPane.setBackground(new Color(51, 153, 255));
miJTextPane.setText("Hola foro.elhacker.net");
miJTextPane.setDisabledTextColor(new Color(0, 0, 0));
miJTextPane.setEnabled(false);


La verdad no entiendo porque se bloque, bueno será que no conozco bien este componente, pero raro he, no deberia.

Intentas hacer algo parecido a esto?? o para que ocupas el JTextPane (para que escribes en el) [y si utilizas JTextArea?? :huh:]



Saludos

#1343
Hola para para limitar el número de lineas, ni idea la verdad, ya que nunca he utilizado este componente.

La parte donde mencionas que seleccionas algo de texto no entendi muy bien, ¿Qué es lo que hace el programa?

En lo unico que te puedo ayudar es cuando utilizas el metodo setEnabled(boolean)

Puedes hacer lo siguiente.

miJTextPane.setText("Hola foro.elhacker.net");
miJTextPane.setDisabledTextColor(new Color(0, 0, 0));
miJTextPane.setEnabled(false);


El metodo setDisableTextColor es para el color cuando el texto esta desabilitado, bueno creo que no hacia falta que lo dijera.

Espero haberte ayudado en algo.

Saludos!
#1345
Java / Re: Duda con método available()
11 Agosto 2009, 06:20 AM
Hola mira no estoy seguro de que es lo que quieres hacer, lo unico que entiendo es que estas manejando entrada y salida de datos, trate de revisar tu codigo.


Citarimport java.io.*;
import java.io.FileInputStream;
import java.util.*;

public class CTestF {
   
   public static void main (String[]args)throws Exception
   {
      InputStreamReader isr = new InputStreamReader(System.in);
       BufferedReader br = new BufferedReader (isr);      
      PrintStream flujoS = System.out;
      
      InputStream iS = new FileInputStream("Hola.txt");//usando el metodo available()
      
      char car = 0;
      //int ncars;
      int tam;
      //int s1;
      //String cad="";
      
      try
      {
         //1
         flujoS.print("Caracter: ");
         car = (char)br.read();
         flujoS.println(car);
         
         //2
         tam = Integer.parseInt(br.readLine());  //el metodo readLine() pertenece a la clase BufferedReader
         br.skip(tam);
         
         //3
         tam = iS.available(); //el metodo available es de la clase InputStream
         br.skip(tam);//el metodo skip pertenecen a la clase System
         
         //4
         flujoS.print("Caracter: ");
         car = (char)br.read();
         flujoS.print(car);
         
      }catch(IOException e)
      {
         e.printStackTrace();
      }
   }
}

Me funciona...
Pero...

Lo que no entiendo es por que si dejo todo asi como está no funciona, pero si por ejemplo dejo entre comentarios 3 de ellos [cual se] si funcion  :-\

Te dejo estas paginas para que veas bien sobre estos temas.

http://www.cica.es/formacion/JavaTut/Cap8/entrada.html

http://www.java2s.com/Code/JavaAPI/java.io/FileInputStreamavailable.htm

http://www.altatorre.com/webclase/java/tramas.htm

Bueno solo espero no haberte confundido.

Saludos.

#1346
Bueno contesto a mi duda  ;D (despues de mucho intentar)

Esto es para reproducir un sonido dentro de un JAR, en una clase extendida a JFrame (Me parece que para los applets es diferente).

Se utiliza la clase InputStream.

private void reproducir(String nombre)
{
    InputStream path = getClass().getResourceAsStream("/sounds/" +nombre);

try
{
sonido=AudioSystem.getClip();
sonido.open(AudioSystem.getAudioInputStream(path));
sonido.start();

}catch(Exception fallo){
System.out.println(fallo);
}
}


Aunque tengo unos problemas con sonidos grandes (en cuanto a duración), y cuando clickeo reproducir se traslapan los sonidos (en caso de que esté en reproduccion alguno), pero intentaré arreglar eso.

Por lo menos espero y le sirva a alguien.

Saludos


#1347
Java / Re: Aspectos de botones y ventanas java
8 Agosto 2009, 07:46 AM
Asi es como dice sapito169 puedes usar lookandfeel, puedes implementar los lookadnfeel del sistema nativo donde se este ejecutando tu aplicacion o puedes buscar en internet e inclusive crear los tuyos, aquí te dejo unas paginas de como se hace y donde puedes descargarlo :rolleyes:

http://kolosso.nireblog.com/

http://personales.ya.com/nimrod/index.html

Respecto a los botones también puedes usar imagenes asi como dice BadDevil

Para cambiar la apariencia del cursor por alguna imagen que quieras puedes usar la clase Cursor

Algo asi.


private Cursor getMiCursor()
   {
       String url = "images/Cursorcito.png";
       ImageIcon icon = new ImageIcon(url);
       Point hotSpot = new Point(3, 3);
       Cursor puntero = Toolkit.getDefaultToolkit().createCustomCursor(icon.getImage(), hotSpot, "Cursor");
       return puntero;
   }


Para que tu imagen del cursor aparezca en algun componente lo unico que tienes que hacer es agregar tu cursor al componente o componentes donde deseas que aparezca.

Algo como esto:


botoncito2.setCursor(miCursor);


miCursor es el nombre de la variable  ;D

y obtendras resultados como estos





Y te dejo una pagina donde puedes conseguir botones PSD

http://www.dennisplucinik.com/blog/2007/08/11/20-free-adobe-photoshop-buttons/

Espero no haber ayudado demasiado  ;D

Luego comentas que tal te va con el juego.


Saludos

#1348
Java / Re: MOUSE ICONO
8 Agosto 2009, 06:06 AM
Hola, creo que te refieres al Cursor, no al Mouse   :xD

Si te refieres a algo como esto, creo que puedo ayudarte:
Solo que yo utilizo imagenes png, habra que intentar con .ico  ;D



Saludos
#1349
Java / Re: Pregunta con método SetFont();
8 Agosto 2009, 04:06 AM
Hola a todos, muy buen tema pero el metodo que posteo rigoxls no funciona al menos no a mi.


public class fuentes{
public fuentes(){
}

public Font fuentes1(String font_name){

try {
    font = Font.createFont(Font.TRUETYPE_FONT, new File(font_name));    
    }catch (Exception ex) {
    }
    return font.deriveFont(60f);

}
}


Ese código tiene algunos errores bueno cualquiera que no sea novato lo notaria, pero lo digo que si se va a posterar algún código que sea bien, no tengo nada contra ti, asi que no te la tomes a mal.
p. ej.

fuentes1??
font no está declarada.

Pero corrigiendo esto aun asi al compilar no te marca error, sino hasta ejecutar... por lo menos a mi me tira el siguiente error.

Exception in thread "main" java.lang.NullPointerException
   at fuentes.fuentes(fuente.java:87)
   at fuente.inciarComponentes(fuente.java:35)
   at fuente.<init>(fuente.java:16)
   at fuente.main(fuente.java:12)

fuente es mi clase principal.

Y mejor aun, volviendo al punto de obtener la fuente del jar ese metodo no funciona ya que utilizas la clase File, mas bien se debe usar la clase InputStream, como lo dice la referencia que posteaste.

CitarHowever, an InputStream might be needed if your code is unable to access file system resources, or if the font is packaged in a Java Archive (JAR) file along with the rest of the application or applet.

fuente: http://java.sun.com/docs/books/tutorial/2d/text/fonts.html

mas bien deberia ser algo asi.


import java.awt.Font;
import java.awt.FontFormatException;
import java.io.IOException;
import java.io.InputStream;
import javax.swing.JPanel;

public class MainClass extends JPanel {

 public void loadFont() throws FontFormatException, IOException{
   String fontFileName = "yourfont.ttf";
   InputStream is = this.getClass().getResourceAsStream(fontFileName);

   Font ttfBase = Font.createFont(Font.TRUETYPE_FONT, is);

   Font ttfReal = ttfBase.deriveFont(Font.PLAIN, 24);
   
 }
 public static void main(String[] args) {

 }

}


fuente: http://www.java2s.com/Code/JavaAPI/java.awt/FontcreateFontintfontFormatInputStreamfontStream.htm

Y para los que no saben como llamar la fuente obtenida desde su clase principal es algo asi (Utilizando la clase (corregida) de rigoxls).

En la clase donde se manda llamar


fuentes f = new fuentes();
Font font = f.fuentes("Kaela.ttf");
etqHMC.setFont(font);
etqHMC.setText("Hola Mundo Cruel");



Esta es mi clase fuentes


class fuentes{

public Font font;

public fuentes(){
}

public Font fuentes(String nombreFuente, int tamanoFuente){

    InputStream nombre = getClass().getResourceAsStream("/fonts/"+nombreFuente); //Jar

try{
font = Font.createFont(Font.TRUETYPE_FONT, nombre);
font = font.deriveFont(Font.PLAIN, tamanoFuente);    
    }catch (Exception ex){
    }
   
    return font;
}
}


/fonts/ es una carpeta donde tengo mis fuentes  ;D

Bueno esto lo posteo para aquellos que se interesen, y que no les haya funcionado el primer metodo, y al parecer es la unica forma de hacerlo.

Alguien sabe si se pueden abrir fonts OpenType? o solo truetype.

Se aceptan criticas o sugerencias :xD

Saludos



#1350
Cita de: juancho77 en 28 Julio 2009, 08:09 AM
getClass().getResource() se usa para obtener la ruta relativa en relación al programa. Debes usar esta forma y no la forma absoluta ya que si alguna vez decides cambiar de carpeta el programa, tendrías que revisar el código para que siga funcionando.
Lo bueno es que se puede usar con cualquier tipo de archivos, no solo imagenes. No sé programar con sonidos en Java, pero supongo que si modificas el valor de la variable Path(absoluta) por una relativa usando getClass().getResource(), debería funcionar.

no amigo ya intente de varias formas aqui algunas de ellas y lo que me muestra


1. URL url = getClass().getResource("welcome.wav");
      String path = ""+ url;
      System.out.println("Ruta"+path);
(al intentar reproducir me muestra eso)
Ruta file:/C:/Reproductor/welcome.wav

java.io.FileNotFoundException: file:\C:\Reproductor\welcome.wav (El nombre de archivo, directorio o etiqueta del volumen no es válido)



2. String path = getClass().getResource("welcome.wav").toString();
(al intentar reproducir me muestra esto)
Ruta file:/C:/Reproductor/welcome.wav

java.io.FileNotFoundException: file:\C:\Reproductor\welcome.wav (El nombre de archivo, directorio o etiqueta del volumen no es válido)

3. sonido=AudioSystem.getClip();
    sonido.open(AudioSystem.getAudioInputStream(new File(getClass().getResource("welcome.wav").toURI())));

(en este caso si lo reproduce pero solo estando a nivel del jar :S)


Me estoy volviendo loco, he mirado que algunos juegos tienen sonidos dentro del jar y se reproducen. Pero igual seguire buscando o espero alguien pueda ayudarme