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 - rub'n

#791
Cita de: JenselG en 23 Septiembre 2018, 02:48 AM
Hasta ahora no he encontrado ayuda que me acerque a mi objetivo

Para la próxima en lo posible coloca código hecho >:D


https://docs.oracle.com/javase/tutorial/uiswing/components/editorpane.html

https://docs.oracle.com/javase/tutorial/displayCode.html?code=https://docs.oracle.com/javase/tutorial/uiswing/examples/components/TextSamplerDemoProject/src/components/TextSamplerDemo.java

Código (java) [Seleccionar]

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

public class TestForo  extends JPanel {

   private static final String newline = "\n";

   public TestForo() {
       setLayout(new BorderLayout());
       setPreferredSize(new Dimension(400,300));
       JScrollPane scrollPane = new JScrollPane(createTextPane());
       scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
       scrollPane.setPreferredSize(new Dimension(10,10));
       scrollPane.setMinimumSize(new Dimension(10 , 10));

       add(scrollPane);

   }

   private JTextPane createTextPane() {
       String[] initString =
               { "JenselGe hola soy java, espero que ejecutes esto XD, ", //regular
                       "another ",                                   //italic
                       "styled ",                                    //bold
                       "text ",                                      //small
                       "component, ",                                //large
                       "which supports embedded components..." + newline,//regular
                       "y no pondre lloronas XD " + newline,          //button
                       "...and embedded icons..." + newline,         //regular

                       newline + "JTextPane is a subclass of JEditorPane that " +
                               "uses a StyledEditorKit and StyledDocument, and provides " +
                               "cover methods for interacting with those objects."
               };

       String[] initStyles = { "regular", "italic", "bold", "small", "large", "regular", "regular","regular","bold"};

       JTextPane textPane = new JTextPane();
       StyledDocument doc = textPane.getStyledDocument();
       addStylesToDocument(doc);

       try {
           for (int i=0; i < initString.length; i++) {
               doc.insertString(doc.getLength(), initString[i], doc.getStyle(initStyles[i]));
           }
       } catch (BadLocationException ble) {
           System.err.println("Couldn't insert initial text into text pane.");
       }

       return textPane;
   }

   protected void addStylesToDocument(StyledDocument doc) {
       //Initialize some styles.
       Style def = StyleContext.getDefaultStyleContext().getStyle(StyleContext.DEFAULT_STYLE);

       Style regular = doc.addStyle("regular", def);
       StyleConstants.setFontFamily(def, Font.SANS_SERIF);

       Style s = doc.addStyle("italic", regular);
       StyleConstants.setItalic(s, true);

       s = doc.addStyle("bold", regular);
       StyleConstants.setBold(s, true);

       s = doc.addStyle("small", regular);
       StyleConstants.setFontSize(s, 10);

       s = doc.addStyle("large", regular);
       StyleConstants.setFontSize(s, 16);

       s = doc.addStyle("bold" , regular);
       StyleConstants.setFontSize(s , 19);


   }

   public static void main(String ...agrea ) {
       new Thread(() -> {
          JFrame jFrame = new JFrame("TextEditable Ejemplo");
          jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
          jFrame.add(new TestForo());
          jFrame.pack();
          jFrame.setLocationRelativeTo(null);
          jFrame.setVisible(true);
       }).start();
   }
}



#792
Java / Re: listas enlazada
15 Septiembre 2018, 21:29 PM
Google, y colabora con parte de tu código XD para ayudarte ...

>:D >:D >:D

según la formula desviación estándar   ver linea 118 a 132 dos maneras de tantas  >:D


Código (java) [Seleccionar]

package foro;

import javax.swing.*;
import javax.swing.border.TitledBorder;
import javax.swing.text.*;
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.util.LinkedList;
import java.util.stream.IntStream;

public class MediaDesviacionEstandar extends JFrame {

   private final LinkedList<Double> linkedList = new LinkedList<>();
   private final JTextPane jTextPane = new JTextPane();
   private final JScrollPane scrollPane = new JScrollPane(jTextPane);
   private final JButton buttonSum  = new JButton("+");
   private final JTextField jTextField = new JTextField(10);
   private final JButton buttonProcesar = new JButton("Procesar");
   private static final String TITLE = "Calcular Media y Desviación Estándar...";

   public MediaDesviacionEstandar() {
       initFrame();
       initBehaviour();
   }

   private void initFrame() {
       scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
       scrollPane.setPreferredSize(new Dimension(30, 10));
       scrollPane.setMinimumSize(new Dimension(30, 10));

       final TitledBorder border = new TitledBorder(TITLE);
       border.setTitleJustification(TitledBorder.CENTER);
       border.setTitlePosition(TitledBorder.TOP);

       final JPanel jPanel = new JPanel();
       jPanel.setBorder(border);
       jPanel.setLayout(new BorderLayout());

       final JPanel panelNort = new JPanel();
       panelNort.setLayout(new FlowLayout());
       panelNort.add(new JLabel());
       panelNort.add(jTextField);
       panelNort.add(buttonSum);
       panelNort.add(buttonProcesar);
       jPanel.add(panelNort, BorderLayout.NORTH);
       jPanel.add(scrollPane);
       jPanel.setPreferredSize(new Dimension(450, 250));

       setPreferredSize(new Dimension(500,500));
       add(jPanel);
       setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       pack();
       setLocationRelativeTo(null);
       setVisible(true);
   }

   private void initBehaviour() {
      buttonSum.addActionListener( e -> {
          jTextField.requestFocus();
          try {
              linkedList.add(Double.valueOf(jTextField.getText().replace(",",".")));
              media();
              jTextField.setText("");
          }catch (Exception ex) {
              JOptionPane.showMessageDialog(this,"valor incorrecto","Error",0);
              jTextField.requestFocus();
          }
      });
      buttonProcesar.addActionListener( e -> {
          jTextField.requestFocus();
          if(linkedList.size() != 0) {
              procesar();
          }else {
              JOptionPane.showMessageDialog(this,"lista vacia loco :X","Error",0);
          }
      });
   }

   private void procesar() {
       final StringBuilder sb = new StringBuilder();
       final StringBuilder elementos = new StringBuilder();
       linkedList.forEach(p -> elementos.append(p + " \\ "));
       sb.append("Números procesados: " +  elementos  +"\n")
               .append("La media es: " +media() + "\n")
               .append("Desviación estándar método 1: " + desviacionEstandar1()+"\n")
               .append("Desviación estándar método 2: " + desviacion2()+"\n")
               .append("___________________________________\n");
       linkedList.clear();
       createJTextPane(sb.toString());
   }

   private void createJTextPane(final String text) {
       // Se inserta
       final StyledDocument doc = jTextPane.getStyledDocument();
       // Atributos para la frase, en negrita
       final Style def = StyleContext.getDefaultStyleContext().getStyle(StyleContext.DEFAULT_STYLE);
       final Style regular = doc.addStyle("regular", def);
       StyleConstants.setFontFamily(regular, Font.SANS_SERIF);
       StyleConstants.setFontSize(regular, 16);
       try {
           jTextPane.getStyledDocument().insertString(jTextPane.getStyledDocument().getLength(), text, doc.getStyle("regular"));
       } catch (BadLocationException e) {
           e.printStackTrace();
       }

   }

   private double media() {
       return linkedList.stream()
               .mapToDouble(Double::doubleValue)
               .average()
               .orElse(Double.NaN);
   }

   //con algo de java 8
   private double desviacionEstandar1() {
      final double sum =  IntStream.range(0 , linkedList.size()) // recorremos el array
               .mapToDouble(p -> Math.pow(linkedList.get(p) - media() , 2)) //
               .sum();
       return Math.sqrt(sum / linkedList.size());
   }

   //java 7
   private double desviacion2() {
       double  sum = 0;
       for ( int f = 0; f < linkedList.size(); f++ )
           sum += Math.pow ( linkedList.get(f) - media() , 2 );
       return Math.sqrt ( sum / ( double ) linkedList.size() );
   }

   public static void main(String... blabla) {
       final String osType = System.getProperty("os.name");
       try {
         if(osType.contains("Win")) {
             UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
         }else if(osType.contains("Linux")) {
             UIManager.setLookAndFeel("javax.swing.plaf.nimbus.NimbusLookAndFeel");
         }
       }catch(Exception ex) {}
       new Thread(() -> {
           new MediaDesviacionEstandar();
       }).start();
   }

}


#793
Java / Re: publicar en fb,twiter, instagram
14 Septiembre 2018, 19:26 PM
Cita de: .rn3w. en 14 Septiembre 2018, 04:00 AM
Quiero publicar contenido en varias redes sociales es posible?
hay algun algoritmo, libreria?

para twitter prueba con http://twitter4j.org/en/index.html#sourceCode  

tiene la clase ConfigurationBuilder para setear los parametros




Para facebook con Spring framework http://projects.spring.io/spring-social-facebook/#quick-start

también https://restfb.com/  source https://github.com/restfb/restfb con la https://restfb.com/documentation/




Esta se ve bien trabajada Instagram https://github.com/brunocvcunha/instagram4j

te recomiendo usar maven para gestionar las dependencias que es lo mas usado en la comunidad java saludos.
#794
Java / Re: [Consulta] Arquitectura MVC
14 Septiembre 2018, 19:07 PM
claro que se puede, si tuvieras el código pues mas fácil en ayudarte, o parte del código que se pueda ejecutar.  y viendo bien tu clase Login tiene muchos métodos set, en ese caso aplica patrón builder y sera mucho mas legible, mantenible etc...

Otra cosas no veo el listener del botón XD
#795
Java / Re: Estructura repititiva while
14 Septiembre 2018, 18:52 PM
Hola,

@TickTack el tipo de dudas que dices tener con java de desconocimiento, también podrían ser las mismas que podrías tener con C# u otro lenguaje, se hace extraño que tu mismo no notes(Eso me parece), el problema no es el lenguaje sino, tu cuando te sientas en el teclado, cuando "NOS" sentamos frente a un teclado, me apunto también ahí, para que veas que no solamente eres tu quien le pasa, porque yo no soy experto en java, quisiera yo.

He igual con cualquier lenguaje debes tener disciplina mental para aprender, y ensayar muchas veces, esas cosas de que no sabias esto o lo otro o que C# etc, esas excusas no están nada bien para alguien que esta dando cursos, pareciera que deberías tomar mas practica para dar cursos.

Ya @Eleкtro y @NEBIRE te han escrito muchas cosas importantisimas, que no a cualquiera se le enseña, así que aprovéchalo, yo espero que les estés agradecido al menos  :-\  

Otra cosa que también note para que veas que no somos tontos aquí, vi que copiaste el código que te puse, que apenas estaba con el constructor agregado, o sea, casi ni con cambios y pegaste o algo así como si nada, sin ver bien que estabas haciendo  :xD eso no es una buena practica en lo absoluto super BIZARRO :-\


Y a la misma vez pues, si ya el programa te corre, pues bien, de paso al menossss ya tenias código hecho y bien por esa, que esa es la idea, que tengas código al menos y no que te hagan la tarea.
#796
Java / Re: Estructura repititiva while
7 Septiembre 2018, 15:31 PM
Cita de: TickTack en  6 Septiembre 2018, 22:05 PM
Hola rub'n,

Por qué es esto lo mas impresionante de todo?

Qué es el metodo entry point? Soy nuevo en Java. Recién Lo estoy aprendiendo.

Gracias y saludos

En serio estas dando cursos de C# :s , algo esta pasando que no sabes lo básico, tenemos que aprender primero bien las cosas para luego enseñar.

El es el método main principal, entrypoint por lo tanto la JVM es lo primero que llamara o invocara


Si te fijas en el código anterior pues si corre, el contructor esta fuera del método main, no dentro como lo colocaste tu. algo muy pero muy Básico
#797
Java / Re: Estructura repititiva while
6 Septiembre 2018, 15:47 PM
Cita de: TickTack en  6 Septiembre 2018, 11:32 AM
Hola Elektro,

Al link que posteaste lo entendi que tengo que escribir Float en mayusculas.

Al primer float lo puedo escribir en mayusculas. Pero al segundo no porque me larga el
siguiente error: Tipo desajuste: No se puede convertir de int a Float.

Gracias y saludos


Hola rub'n,

De alguna manera no puedo correr tu programa. Es por eso que tuve que modificar el
codigo para que tuviera la posibilidad de correrlo. Porque cuando le daba en el
boton para correr me corria otro proyecto.


import java.util.Locale;
import java.util.Scanner;

public class TestForo {
public static void main(String[] ar) {
private static final Scanner TECLADO = new Scanner(System.in);

public TestForo() {
int cantidad;

       TECLADO.useLocale(Locale.US); // Habilita la lectura del .

       System.out.print("Escriba la cantidad de alturas a ingresar: ");
       cantidad = TECLADO.nextInt();

       int x = 1;
       float altura, promedio;
       float alturas = 0;

       while (x <= cantidad) {
           System.out.print("Altura: ");
           altura = TECLADO.nextFloat(); //
           alturas = alturas + altura;
           x++; //añadiendo contador con postIncremento
       }

       promedio = alturas / cantidad;
       System.out.print("La cantidad promedio de alturas de personas es: " + promedio);
}
}
}


Y me larga los errores que se pueden ver en la imagen:


Gracias y saludos



Pues desde luego que te dará error hasta el final de los tiempos, sera que puedes mirar el código de nuevo ? lo mas impresionante de todo es esto



tienes el contructor dentro del método entry point mas popular que existe main
#798
Java / Re: Estructura repititiva while
3 Septiembre 2018, 03:12 AM
Hola,

muestra el codigo que tienes actual y con geshi por favor, con esta linea expuesta por NEBIRE deberia aceptar el punto

Código (java) [Seleccionar]
teclado.useLocale(Locale.US);

Código (java) [Seleccionar]
public class TestForo {

   private static final Scanner TECLADO = new Scanner(System.in);

   public TestForo() {

       int cantidad;

       TECLADO.useLocale(Locale.US); // Habilita la lectura del .

       System.out.print("Escriba la cantidad de alturas a ingresar: ");
       cantidad = TECLADO.nextInt();

       int x = 1;
       float altura, promedio;
       float alturas = 0;

       while (x <= cantidad) {
           System.out.print("Altura: ");
           altura = TECLADO.nextFloat(); //
           alturas = alturas + altura;
           x++; //añadiendo contador con postIncremento
       }

       promedio = alturas / cantidad;
       System.out.print("La cantidad promedio de alturas de personas es: " + promedio);

   }
    public static void main(String ...blablablg) {
     new TestForo();
   }

}


Outpud:

Código (bash) [Seleccionar]
Escriba la cantidad de alturas a ingresar: 3
Altura: 2.32
Altura: 1.80
Altura: 1.75
La cantidad promedio de alturas de personas es: 1.9566666
Process finished with exit code 0
#799
Noticias / Re: ¿Qué es el "Vamping"?
17 Agosto 2018, 21:13 PM
Cita de: wolfbcn en 26 Julio 2018, 15:54 PM
Nace de la unión de las palabras en inglés vampire (vampiro, ese ser fantástico de colmillos largos conocido por su afición a salir de noche) y texting (acción de enviar mensajes de texto a través de aparatos electrónicos).

El vamping se trata del fenómeno por el cual las personas, normalmente adolescentes, utilizan aparatos electrónicos durante la noche, reduciendo las horas necesarias de sueño para lograr un buen descanso lo que desemboca en un mayor riesgo de sufrir las consecuencias propias de no dormir lo suficiente:

    Cansancio.
    Debilidad.
    Irritabilidad.
    Dificultad y lentitud en los procesos de aprendizaje, así como falta de concentración.
    Alteraciones en el metabolismo.
    Defensas bajas.

El nombre de esta 'práctica' fue impuesto por los mismos jóvenes, los cuales comenzaron a publicar fotos con esa etiqueta (#vamping). Uno de los grandes peligros que tiene esta práctica es que puede acabar desembocando en una adicción a las nuevas tecnologías, la cual es igual de peligrosa que cualquier otra adicción que podamos tener, desarrollando ansiedad y cambios bruscos y negativos de la conducta.

LEER MAS: https://www.internautas.org/html/10039.html

y que peor adicción a programar y estar en internet toda la noche ? yo antes amanecía muchisimooo jajajaj
#800
Cita de: mz39720 en 22 Junio 2018, 01:22 AM
Buen dia.

El problema es el siguiente: tengo una clase Afiliado, con el siguiente metodo:

public void calculoInteres() {

       if(getTipoAfiliado()=='c' || getTipoAfiliado()=='C') {
           interes=1.5-(0.5-ValorFecha());        
       }
       if(getTipoAfiliado()=='b' || getTipoAfiliado()=='B') {

           interes=1.5-(0.2-ValorFecha());    
       }
   }

interes es un atributo cualquiera la cuestion es la siguiente, hay una clase X que maneja un valor, a tal valor lo tengo que dividir pero cuando lo divida tengo que mostrar en pantalla el valor dividido y lo que me da el metodo calculoInteres, y despues tal valor dividido lo tengo que sumar con el metodo calculoInteres, eso como tal se debe mostrar en el main la pregunta seria como hago para mostar sabiendo que calculoInteres es un void por ejemplo  System.out.print("El valor de las cuota es de : " +prestamo1.getValorCuota()+" + " aqui muestra el valor ya dividido de lo que la persona registro por teclado en ese caso calculoInteres() y despues mostrar un mensaje pero ya unido los dos o sea que sume el valor + el interes, como si fuera un prestamo que aun un interes ya estipulado y un valor con ese interes, en este caso tengo que mostrarlo con interes y sin interes.

Hola que tal ? ,

No te dan la posibilidad de crearte otras variables de instancia e inicializarlas para que concatenes ese valor que dices de igual manera tu descripcion esta un poco :s

recuerda que también esta la clausula return