Mostrar Datos al Seleccionar una fila de un jtable JAVA SWING
try{
int seleccion = tblPacientes.getSelectedRow();
txtDNI1.setText(String.valueOf(tblPacientes.getValueAt(seleccion, 0)));
txtNombre1.setText(String.valueOf(tblPacientes.getValueAt(seleccion, 1)));
txtDireccion1.setText(String.valueOf(tblPacientes.getValueAt(seleccion, 2)));
txtTelefono1.setText(String.valueOf(tblPacientes.getValueAt(seleccion, 3)));
txtCorreo1.setText(String.valueOf(tblPacientes.getValueAt(seleccion, 4)));
date = new SimpleDateFormat("dd/MM/yyyy").parse((String) modelo.getValueAt(seleccion,5));
txtFecha1.setDate(date);
}catch(Exception e){
}
martes, 16 de abril de 2019
sábado, 6 de abril de 2019
Implementar Calendario en JFrame con JCalendar
En el boton Obtener Fecha:
import java.util.Date;
private void btnObtenerFechaActionPerformed(java.awt.event.ActionEvent evt) {
Date fecha = jDateChooser1.getDate();
//Formato de Fecha
SimpleDateFormat formato = new SimpleDateFormat("dd/MM/yyyy");
txtSalida.setText("La fecha es: " + formato.format(fecha));
}
lunes, 4 de marzo de 2019
Instalar SQL Server en CentOs 7
Descargar los repositorios de Microsoft:
$> sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo
Ejecutar los siguientes comandos para instalar SQL Server:
$> sudo yum install -y mssql-server
Configuración de MSSQL
Establecer la contraseña de SA y seleccionar la edición.
$> sudo /opt/mssql/bin/mssql-conf setup
Verificar que el servicio se esté ejecutando:
$> systemctl status mssql-server
Permitir el puerto de SQL Server en el firewall
$> sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
$> sudo firewall-cmd --reload
Finalmente Instalar en Windows las herramientas para conectarse a SQL Server en Linux:
- SQL Server Management Studio (SSMS)
- Windows PowerShell
- SQL Server Data Tools (SSDT)
$> sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo
Ejecutar los siguientes comandos para instalar SQL Server:
$> sudo yum install -y mssql-server
Configuración de MSSQL
Establecer la contraseña de SA y seleccionar la edición.
$> sudo /opt/mssql/bin/mssql-conf setup
Verificar que el servicio se esté ejecutando:
$> systemctl status mssql-server
Permitir el puerto de SQL Server en el firewall
$> sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
$> sudo firewall-cmd --reload
Finalmente Instalar en Windows las herramientas para conectarse a SQL Server en Linux:
- SQL Server Management Studio (SSMS)
- Windows PowerShell
- SQL Server Data Tools (SSDT)
domingo, 3 de marzo de 2019
Atajos de teclado en Visual Studio Code
Atajos de teclado en Visual Studio Code
============================================
Shift + Suprimir -> Eliminar la línea actual
Shift + Alt + ↓ -> Duplica la línea actual en la línea inferior
Alt+ Shift + / -> Comentar/descomentar bloques de codigo
Alt+↑ -> Intercambiar línea actual con la superior
Ctrl+Alt+↓ -> Multicursor
Shift+Alt+F -> Formatear Código
============================================
Shift + Suprimir -> Eliminar la línea actual
Shift + Alt + ↓ -> Duplica la línea actual en la línea inferior
Alt+ Shift + / -> Comentar/descomentar bloques de codigo
Alt+↑ -> Intercambiar línea actual con la superior
Ctrl+Alt+↓ -> Multicursor
Shift+Alt+F -> Formatear Código
Ctrl + / -> Comentar solo una linea
Ctrl + Shift + / -> Descomentar solo una linea
Ctrl + B -> Ocultar/Mostrar barra de Actividades
Ctrl + Shift + E -> Ocultar/Mostrar Explorador
Ctrl + Shift + X -> Ocultar/Mostrar Extensiones
Ctrl + Shift + E -> Ocultar/Mostrar Explorador
Ctrl + Shift + X -> Ocultar/Mostrar Extensiones
Ctrl+ Shift + H -> buscar y reemplazar una cadena
Ctrl + Enter -> Insertar nueva linea
Alt + Shift + J -> Move last selection To Previous Find Match
Ctrl+ Alt + Shift + J -> Seleccionar todas las coincidencias
Ctrl + Shift + L -> Seleccionar todas las palabras iguales
Shift + W o Alt +J -> Seleccionar la siguiente búsqueda
Ctrl + W -> Cerrar archivo
Ctrl + P -> Buscar archivos
Alt+ 1 2 3 -> Mover entre pestañas
miércoles, 20 de febrero de 2019
PROGRAMACION ORIENTADO OBJETOS EN JAVA
PROGRAMACION ORIENTADO OBJETOS EN JAVA
===========================================
Ejercicio 1:
=========
Cree un proyecto nuevo de nombre P01E01. Cree un paquete nuevo de nombre modelo y diseñe una clase de nombre Producto con los siguientes atributos privados: código (cadena), descripción (cadena), precio (real) y con los métodos públicos get/set. Cree un nuevo paquete de nombre vista y diseñe la GUI en un Panel de nombre PanelPrincipal para el ingreso de los datos con el siguiente diseño:
Cada vez que hace clic en el botón Nuevo debe crear un objeto de la clase Producto y mostrar la información de sus atributos. Cada vez que hace clic en el botón Borrar debe borrar la información del área de texto, de las cajas de texto y enfocar el ingreso en la caja de texto del código.
Solucion:
---------------
Diseñamos una clase, de nombre Producto
Con los siguientes atributos privados: código (cadena), descripción (cadena), precio (real) y los métodos públicos get/set. Considere un constructor implícito.
public class Producto {
// atributos privados
private String codigo,
private String descripcion;
private double precio;
// métodos get
public String getCodigo(){return codigo;}
public String getDescripcion(){return descripcion;}
public double getPrecio(){ return precio;}
// métodos set
public void setCodigo(String c){ codigo =c;}
public void setDescripcion(String d){ descripcion=d;}
public void setPrecio(double p){ precio=p;}
}
Damos doble clic en el botón Nuevo para programar su acción:
private void btnNuevoActionPerformed(java.awt.event.ActionEvent evt) {
// crea un objeto nuevo de la clase Producto
Producto nuevo = new Producto();
// lee los valores de la GUI y los coloca como atributos del objeto
nuevo.setCodigo(leeCodigo());
nuevo.setDescripcion(leeDescripcion());
nuevo.setPrecio(leePrecio());
// muestra la información del nuevo objeto
lista(nuevo);
}
// métodos que leen los datos de la GUI
private String leeCodigo(){return txtCodigo.getText();}
private String leeDescripcion(){return txtDescripcion.getText();}
private double leePrecio(){return Double.parseDouble(txtPrecio.getText());}
// método que muestra la información de un objeto de la clase Producto
private void lista(Producto p){
imprime("Codigo\t:"+p.getCodigo());
imprime("Descripcion\t:"+p.getDescripcion());
imprime("Precio\t:"+p.getPrecio());
}
// método que muestra una cadena en el objeto de salida de la GUI
private void imprime(String s){
txtSalida.append(s+"\n");
}
Regresamos al diseño y hacemos doble clic en el botón Borrar para programar su acción:
private void btnBorrarActionPerformed(java.awt.event.ActionEvent evt) {
txtSalida.setText("");
txtCodigo.setText("");
txtDescripcion.setText("");
txtPrecio.setText("");
txtCodigo.requestFocus();
}
En el paquete vista
Coloque distribución BorderLayout, vaya a la ficha Source y escriba lo que está en negrita:
public class Principal extends javax.swing.JFrame {
public Principal() {
initComponents();
add(new PanelPrincipal());
setSize(600,200);
}
Ejecute su aplicación.
Ejercicio 2:
=========
Realice un formulario que permita el ingreso de Nombres y Apellidos, Curso, Nota 1, Nota2, Nota 3 y que se Muestre en un Area de Texto la suma de notas, promedio, la condicion del promedio si es mayor o igual a 10.5 esta aprobado o desaprobado y el estado del promedio "0-5(Pesimo)", "6-10(Malo)", "11-15(Regular)" , "16-18(Bueno) y "19-20(Excelente)""
Diseñamos una clase, de nombre Estudiante
Con los siguientes atributos privados: nombre (cadena), apellidos (cadena), curso (cadena), nota1, nota 2 y nota 3 (double) y los métodos públicos get/set.
public class Estudiante {
private String nombre;
private String apellidos;
private String curso;
private double nota1;
private double nota2;
private double nota3;
public Estudiante(String nombre, String apellidos, String curso, double nota1, double nota2, double nota3) {
this.nombre = nombre;
this.apellidos = apellidos;
this.curso = curso;
this.nota1 = nota1;
this.nota2 = nota2;
this.nota3 = nota3;
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public String getApellidos() {
return apellidos;
}
public void setApellidos(String apellidos) {
this.apellidos = apellidos;
}
public String getCurso() {
return curso;
}
public void setCurso(String curso) {
this.curso = curso;
}
public double getNota1() {
return nota1;
}
public void setNota1(double nota1) {
this.nota1 = nota1;
}
public double getNota2() {
return nota2;
}
public void setNota2(double nota2) {
this.nota2 = nota2;
}
public double getNota3() {
return nota3;
}
public void setNota3(double nota3) {
this.nota3 = nota3;
}
public double getSumaNotas() {
return this.getNota1() + this.getNota2() + this.getNota3();
}
public double getPromedioNotas() {
double promedio = (this.getNota1() + this.getNota2() + this.getNota3()) / 3;
return promedio;
}
public String getCondicionPromedio(double prom) {
String condicion = "";
if (prom >= 10.5) {
condicion = "aprobado";
}
else {
condicion = "desaprobado";
}
return condicion;
}
public String getEstadoPromedio(double prom) {
String estado = "";
if (prom >= 0 && prom <= 5) {
estado = "Pesimo";
}
else if (prom >= 6 && prom <= 10) {
estado = "Malo";
}
else if (prom >= 11 && prom <= 15) {
estado = "Regular";
}
else if (prom >= 16 && prom <= 18) {
estado = "Bueno";
}
else if (prom >= 19 && prom <= 20) {
estado = "Excelente";
}
return estado;
}
}
Damos doble clic en el botón Procesar para programar su acción:
// crea un objeto e de la clase Estudiante
Estudiante e = new Estudiante(leeNombres(),leeApellidos(),leeCurso(),leeNota1(),leeNota2(),leeNota3());
// muestra la información del objeto
listaEstudiante(e);
//metodos que leen los datos de la GUI
private String leeNombres(){
return txtNombres.getText();
}
private String leeApellidos(){
return txtApellidos.getText();
}
private String leeCurso(){
return cboCurso.getSelectedItem().toString();
}
private double leeNota1() {
return Double.parseDouble(txtNota1.getText());
}
private double leeNota2() {
return Double.parseDouble(txtNota2.getText());
}
private double leeNota3(){
return Double.parseDouble(txtNota3.getText());
}
// método que muestra la información de un objeto de la clase Estudiante
private void listaEstudiante(Estudiante e){
imprimir("Nombres y Apellidos:\t" + e.getNombre() + e.getApellidos());
imprimir("Curso:\t\t" + e.getCurso());
imprimir("Nota1:\t\t"+e.getNota1());
imprimir("Nota2:\t\t"+e.getNota2());
imprimir("Nota3:\t\t"+e.getNota3());
imprimir("Suma Notas:\t\t"+e.getSumaNotas());
imprimir("Promedio Notas:\t"+e.getPromedioNotas());
imprimir("Condicion del Promedio:\t" +e.getCondicionPromedio(e.getPromedioNotas()));
imprimir("Estado Promedio:\t" + e.getEstadoPromedio(e.getPromedioNotas()));
}
// método que muestra una cadena en el objeto de salida de la GUI
private void imprimir(String cad){
txtSalida.append(cad+"\n");
}
Regresamos al diseño y hacemos doble clic en el botón Limpiar para programar su acción:
private void btnLimpiarActionPerformed(java.awt.event.ActionEvent evt) {
limpiar();
}
void limpiar(){
this.txtNombres.setText(null);
this.txtApellidos.setText(null);
this.cboCurso.setSelectedIndex(0);
this.txtNota1.setText(null);
this.txtNota2.setText(null);
this.txtNota3.setText(null);
this.txtSalida.setText(null);
txtNombres.requestFocus();
}
Hacemos doble clic en el botón Cerrar para programar su acción:
private void btnCerrarActionPerformed(java.awt.event.ActionEvent evt) {
cerrar();
}
void cerrar(){
this.dispose();
}
===========================================
Ejercicio 1:
=========
Cree un proyecto nuevo de nombre P01E01. Cree un paquete nuevo de nombre modelo y diseñe una clase de nombre Producto con los siguientes atributos privados: código (cadena), descripción (cadena), precio (real) y con los métodos públicos get/set. Cree un nuevo paquete de nombre vista y diseñe la GUI en un Panel de nombre PanelPrincipal para el ingreso de los datos con el siguiente diseño:
Cada vez que hace clic en el botón Nuevo debe crear un objeto de la clase Producto y mostrar la información de sus atributos. Cada vez que hace clic en el botón Borrar debe borrar la información del área de texto, de las cajas de texto y enfocar el ingreso en la caja de texto del código.
Solucion:
---------------
Diseñamos una clase, de nombre Producto
Con los siguientes atributos privados: código (cadena), descripción (cadena), precio (real) y los métodos públicos get/set. Considere un constructor implícito.
public class Producto {
// atributos privados
private String codigo,
private String descripcion;
private double precio;
// métodos get
public String getCodigo(){return codigo;}
public String getDescripcion(){return descripcion;}
public double getPrecio(){ return precio;}
// métodos set
public void setCodigo(String c){ codigo =c;}
public void setDescripcion(String d){ descripcion=d;}
public void setPrecio(double p){ precio=p;}
}
Damos doble clic en el botón Nuevo para programar su acción:
private void btnNuevoActionPerformed(java.awt.event.ActionEvent evt) {
// crea un objeto nuevo de la clase Producto
Producto nuevo = new Producto();
// lee los valores de la GUI y los coloca como atributos del objeto
nuevo.setCodigo(leeCodigo());
nuevo.setDescripcion(leeDescripcion());
nuevo.setPrecio(leePrecio());
// muestra la información del nuevo objeto
lista(nuevo);
}
// métodos que leen los datos de la GUI
private String leeCodigo(){return txtCodigo.getText();}
private String leeDescripcion(){return txtDescripcion.getText();}
private double leePrecio(){return Double.parseDouble(txtPrecio.getText());}
// método que muestra la información de un objeto de la clase Producto
private void lista(Producto p){
imprime("Codigo\t:"+p.getCodigo());
imprime("Descripcion\t:"+p.getDescripcion());
imprime("Precio\t:"+p.getPrecio());
}
// método que muestra una cadena en el objeto de salida de la GUI
private void imprime(String s){
txtSalida.append(s+"\n");
}
Regresamos al diseño y hacemos doble clic en el botón Borrar para programar su acción:
private void btnBorrarActionPerformed(java.awt.event.ActionEvent evt) {
txtSalida.setText("");
txtCodigo.setText("");
txtDescripcion.setText("");
txtPrecio.setText("");
txtCodigo.requestFocus();
}
En el paquete vista
Coloque distribución BorderLayout, vaya a la ficha Source y escriba lo que está en negrita:
public class Principal extends javax.swing.JFrame {
public Principal() {
initComponents();
add(new PanelPrincipal());
setSize(600,200);
}
Ejecute su aplicación.
Ejercicio 2:
=========
Realice un formulario que permita el ingreso de Nombres y Apellidos, Curso, Nota 1, Nota2, Nota 3 y que se Muestre en un Area de Texto la suma de notas, promedio, la condicion del promedio si es mayor o igual a 10.5 esta aprobado o desaprobado y el estado del promedio "0-5(Pesimo)", "6-10(Malo)", "11-15(Regular)" , "16-18(Bueno) y "19-20(Excelente)""
Solucion:
------------
Diseñe la GUI en un JFrame de nombre JFEstudiante para el ingreso de los datos.Con los siguientes atributos privados: nombre (cadena), apellidos (cadena), curso (cadena), nota1, nota 2 y nota 3 (double) y los métodos públicos get/set.
public class Estudiante {
private String nombre;
private String apellidos;
private String curso;
private double nota1;
private double nota2;
private double nota3;
public Estudiante(String nombre, String apellidos, String curso, double nota1, double nota2, double nota3) {
this.nombre = nombre;
this.apellidos = apellidos;
this.curso = curso;
this.nota1 = nota1;
this.nota2 = nota2;
this.nota3 = nota3;
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public String getApellidos() {
return apellidos;
}
public void setApellidos(String apellidos) {
this.apellidos = apellidos;
}
public String getCurso() {
return curso;
}
public void setCurso(String curso) {
this.curso = curso;
}
public double getNota1() {
return nota1;
}
public void setNota1(double nota1) {
this.nota1 = nota1;
}
public double getNota2() {
return nota2;
}
public void setNota2(double nota2) {
this.nota2 = nota2;
}
public double getNota3() {
return nota3;
}
public void setNota3(double nota3) {
this.nota3 = nota3;
}
public double getSumaNotas() {
return this.getNota1() + this.getNota2() + this.getNota3();
}
public double getPromedioNotas() {
double promedio = (this.getNota1() + this.getNota2() + this.getNota3()) / 3;
return promedio;
}
public String getCondicionPromedio(double prom) {
String condicion = "";
if (prom >= 10.5) {
condicion = "aprobado";
}
else {
condicion = "desaprobado";
}
return condicion;
}
public String getEstadoPromedio(double prom) {
String estado = "";
if (prom >= 0 && prom <= 5) {
estado = "Pesimo";
}
else if (prom >= 6 && prom <= 10) {
estado = "Malo";
}
else if (prom >= 11 && prom <= 15) {
estado = "Regular";
}
else if (prom >= 16 && prom <= 18) {
estado = "Bueno";
}
else if (prom >= 19 && prom <= 20) {
estado = "Excelente";
}
return estado;
}
}
Damos doble clic en el botón Procesar para programar su acción:
// crea un objeto e de la clase Estudiante
Estudiante e = new Estudiante(leeNombres(),leeApellidos(),leeCurso(),leeNota1(),leeNota2(),leeNota3());
// muestra la información del objeto
listaEstudiante(e);
//metodos que leen los datos de la GUI
private String leeNombres(){
return txtNombres.getText();
}
private String leeApellidos(){
return txtApellidos.getText();
}
private String leeCurso(){
return cboCurso.getSelectedItem().toString();
}
private double leeNota1() {
return Double.parseDouble(txtNota1.getText());
}
private double leeNota2() {
return Double.parseDouble(txtNota2.getText());
}
private double leeNota3(){
return Double.parseDouble(txtNota3.getText());
}
// método que muestra la información de un objeto de la clase Estudiante
private void listaEstudiante(Estudiante e){
imprimir("Nombres y Apellidos:\t" + e.getNombre() + e.getApellidos());
imprimir("Curso:\t\t" + e.getCurso());
imprimir("Nota1:\t\t"+e.getNota1());
imprimir("Nota2:\t\t"+e.getNota2());
imprimir("Nota3:\t\t"+e.getNota3());
imprimir("Suma Notas:\t\t"+e.getSumaNotas());
imprimir("Promedio Notas:\t"+e.getPromedioNotas());
imprimir("Condicion del Promedio:\t" +e.getCondicionPromedio(e.getPromedioNotas()));
imprimir("Estado Promedio:\t" + e.getEstadoPromedio(e.getPromedioNotas()));
}
// método que muestra una cadena en el objeto de salida de la GUI
private void imprimir(String cad){
txtSalida.append(cad+"\n");
}
Regresamos al diseño y hacemos doble clic en el botón Limpiar para programar su acción:
private void btnLimpiarActionPerformed(java.awt.event.ActionEvent evt) {
limpiar();
}
void limpiar(){
this.txtNombres.setText(null);
this.txtApellidos.setText(null);
this.cboCurso.setSelectedIndex(0);
this.txtNota1.setText(null);
this.txtNota2.setText(null);
this.txtNota3.setText(null);
this.txtSalida.setText(null);
txtNombres.requestFocus();
}
Hacemos doble clic en el botón Cerrar para programar su acción:
private void btnCerrarActionPerformed(java.awt.event.ActionEvent evt) {
cerrar();
}
void cerrar(){
this.dispose();
}
jueves, 7 de febrero de 2019
Elevado consumo de CPU por el proceso System en WINDOWS 10
Elevado consumo de CPU por el proceso System en Windows 10
El consumo de CPU por el proceso System que a su vez es el archivo ntoskrnl.exe (NT Kernel & System)
1. Revisar y actualizar todos los drivers de su PC o Laptop
2. La ruta en la cual modificaremos el archivo Start es:
Equipo\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TimeBrokerSvc
Modificar el Archivo Start -> Valor:4
El consumo de CPU por el proceso System que a su vez es el archivo ntoskrnl.exe (NT Kernel & System)
1. Revisar y actualizar todos los drivers de su PC o Laptop
2. La ruta en la cual modificaremos el archivo Start es:
Equipo\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TimeBrokerSvc
Modificar el Archivo Start -> Valor:4
martes, 29 de enero de 2019
Ejercicios Java
1. Permitir el registro de 10 alumnos a una clase con su respectivo nombre, edad y carrera a la que ingresa:
* Obtener el promedio de edad de los asistentes a la clase.
* Agrupar a los alumnos de acuerdo al tipo de carrera ciencias o letras
public class Ejercicio1 {
public static void main(String[] args) {
Scanner entrada = new Scanner(System.in);
String nombre = "", carrera = "", ciencias = "", letras="";
int edad = 0, cantidad;
double sumaTotal = 0, promedio;
System.out.print("Ingrese cantidad de alumnos: ");
cantidad = entrada.nextInt();
for (int i = 1; i <= cantidad; i++) {
System.out.print(i + ")" + "Ingrese nombre: ");
nombre = entrada.next();
System.out.print("Ingrese edad: ");
edad = entrada.nextInt();
System.out.print("Ingrese carrera: ");
carrera = entrada.next();
if (carrera.equals("sistemas") || carrera.equals("electronica")) {
ciencias = ciencias + nombre + " " + String.valueOf(edad) + " " + carrera + "\n";
}
else if(carrera.equals("literatura") || (carrera.equals("contabilidad")) ){
letras = letras + nombre + " " + String.valueOf(edad) + " " + carrera + "\n";
}
sumaTotal += edad;
}
promedio = sumaTotal / cantidad;
System.out.println("CIENCIAS:\n" +ciencias);
System.out.println("LETRAS:\n" + letras);
System.out.println("PROMEDIO: " + promedio);
}
}
Suscribirse a:
Entradas (Atom)
Actualizar TailwindCSS a la version 4 en Laravel
Actualizar TailwindCSS a la version 4 en Laravel npx @tailwindcss/upgrade En el archivo vite.config.ts Agregar el plugin de tailwindcss impo...
-
1) ingrese 2 números enteros diferentes y visualizar el mayor de ellos. package problema1; import java.util.Scanner; public class Proble...
-
Actualizar TailwindCSS a la version 4 en Laravel npx @tailwindcss/upgrade En el archivo vite.config.ts Agregar el plugin de tailwindcss impo...
-
Estos son los pasos para activar Windows 11 desde el cmd: Ir a inicio y escribir "cmd". Clic derecho "ejecutar como administ...