|
Mostrar Temas
|
Páginas: 1 [2]
|
11
|
Programación / Java / duda javafx sencilla (calculadora)
|
en: 28 Febrero 2014, 17:23 pm
|
Buenas amigos, tengo una dudilla respecto a javafx, pues acabo de empezar y me resulta un pelin enrevesado, de forma normal ningun problema pero lo que estoy haciendo es construir una calculadora en javafx, cada tecla tiene su actionevent( construido desde scenebuilder ) lo que quiero conseguir es si pulso la tecla (+) los dos numeros recogidos en el textfield me los sume y obtenga el resultado en el textfield. Es decir: String operacion= campoResultado.getText(); // aqui esta por ejemplo 1+1 si operacion es +{ modelo.sumar(primernumero,segundo numero); // como decirle al textfield cual es cual }
//mostrar el resultado casteado a double en el campoResultado;
|
|
|
12
|
Programación / Java / modelo productor consumidor
|
en: 31 Enero 2014, 19:33 pm
|
No consigo entender porque siempre esta esperando mi programa. quiero conseguir el efecto "ping-pong" con el modelo productor consumidor pero se queda siempre en wait(); a que se debe? facilito micodigo: public class Cola {
private String numero; private boolean disponible=false;
public synchronized String get() { while (disponible == false) { try { wait(); } catch (InterruptedException e) { } } disponible = false; //lo va a consumir notifyAll();
return numero; }
public synchronized void put(String valor) { while (disponible == true) { try { wait(); } catch (InterruptedException e) { } numero = valor; disponible = true; //lo va a consumir notifyAll();
} } public class Consumidor extends Thread{ private Cola cola; private String n;
public Consumidor(Cola cola) { this.cola = cola; } @Override public void run(){ while(true){ n = cola.get(); System.out.println(n); } } public class Productor extends Thread {
private Cola cola; private String texto; private String texto2; private String actual;
public Productor(Cola cola, String texto, String texto2) { this.cola = cola; this.texto = texto; this.texto2 = texto2; this.actual = texto2; }
@Override public void run() { while (true) { if (!actual.equals(texto2)) {
cola.put(texto2); actual = texto2; } else {
cola.put(texto); actual = texto; }
} } main(){ Cola cola= new Cola(); Productor p= new Productor(cola,"ping","pong); Consumidor c= new Consumidor(cola); p.start(); c.start();
|
|
|
13
|
Programación / Java / [SOLUCIONADO]duda XStream modificar nombre tag
|
en: 9 Diciembre 2013, 21:03 pm
|
Hola tengo una duda. Y es que, no consigo que mi programa muestre un tag modificado con el nombre que yo quiera. El codigo en cuestion es este.. xstream.alias("Empleado", Empleados.class); xstream.aliasField("dir", Empleados.class, "director"); mi xml tiene varios campos, uno de ellos (dir) ( los leo desde la base de datos) quiero que aparezca esa etiqueta con el valor modificado, es decir <director></director> por ejemplo. Creo que se hace con aliasField como pongo en el codigo, pero me lo imprime exactamente igual. en qué fallo amigos??
|
|
|
14
|
Programación / Java / Duda Apache Commons CLI
|
en: 7 Noviembre 2013, 23:07 pm
|
Hola compañeros, tengo una duda que no sé como resolverla: usage: Vista.CalculadoraCLIVista -resta Calcula la resta dos operandos -suma Calcula la suma dos operandosl ¿ Cómo puedo "decirle" que el args[0] equivale a resta,suma..etc? Lo estoy haciendo con el patron MVC y el código de la vista lo tengo así , pero no estoy muy convencido que este bien.. public void realizarOperacion(String[] args,double x, double y) { // para poder pasarle el options al parser Options options = mostrarOpciones();
CommandLineParser parser = new BasicParser(); CommandLine cmd = null; try { cmd = parser.parse(options, args); } catch (ParseException ex) { Logger.getLogger(CalculadoraCLIVista.class.getName()).log(Level.SEVERE, null, ex); }
if (cmd == null) { System.err.println("No se cargo bien el parseador de la linea de comandos");
System.exit(-1); }
if (cmd.hasOption("h") || cmd.getOptions().length == 0) { new HelpFormatter().printHelp(CalculadoraCLIVista.class.getCanonicalName(), options); return; }
if (cmd.hasOption("suma")) { // leer los dos argumentos , convertirlos a double y realizar operacion. // "x" seria el primer operando que se le pasa," y" el segundo. x = Double.parseDouble(args[1]); y = Double.parseDouble(args[2]); controlador.sumar(x, y); } } .. de tal manera que yo ponga sumar 1 2 y la línea de comandos me devuelva 3.. :S
|
|
|
15
|
Programación / Java / AYUDA! Como importar la libreria Apache Commons cli en el classpath
|
en: 5 Noviembre 2013, 01:34 am
|
wenas gente! no consigo importarla.. la cuestión es que quiero en la linea de comandos ejecutar ... javac aplicacionCLI me salta... C:\Users\Juanma\Desktop>javac aplicacionCLI.java aplicacionCLI.java:6: error: package org.apache.commons.cli does not exist import org.apache.commons.cli.*; ... 8 errors Alquien me podría explicar QUE TENGO QUE HACER PARA IMPLEMENTAR LA LIBRERIA COMMONS CLI BIEN PARA YO PODER EJECUTAR MIS APLICACIONES DESDE DONDE YO QUIERA????
|
|
|
16
|
Programación / .NET (C#, VB.NET, ASP) / Porque no ingresa datos en la base datos usando entityframework
|
en: 8 Junio 2013, 01:41 am
|
1º La base de datos en sql compact 2º no la tengo importada en el proyecto Public Sub add(ByVal juguete As Juguete) Implements IJugueteDAO.add ' Creo acceso a db a través de EF Dim ef = New juguetes1Entities()
' Creo juguete en la base de datos Dim jugueteEf = ef.Juguetes.CreateObject() ' Le asigno los valores de mi modelo jugueteEf.EdadMinima = juguete.EdadMinima jugueteEf.Nombre = juguete.Nombre jugueteEf.Precio = juguete.Precio ' Guardo los cambios en la db ef.SaveChanges() End Sub borrar... Public Sub remove(ByVal juguete As Juguete) Implements IJugueteDAO.remove Dim ef = New juguetes1Entities()
' Busco en la db el juguete por el ID Dim jugueteEf = From s In ef.Juguetes Where s.Id = juguete.Id
' Tras eso, lo borro ef.Juguetes.DeleteObject(jugueteEf) ' Creo que en el delete save es opcional... ef.SaveChanges() End Sub actualizar.... Public Function Update(ByVal juguete As Juguete) Implements IJugueteDAO.update Try Dim ef = New juguetes1Entities Dim productoEF = (From s In ef.Juguetes Where s.Id = juguete.Id Select s).First() productoEF.Nombre = juguete.Nombre productoEF.EdadMinima = juguete.EdadMinima productoEF.Precio = juguete.Precio
ef.SaveChanges() Return True Catch Return False End Try End Function en el form.... Class MainWindow
Dim juguete As Juguete
Private Sub Window_Loaded(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles MyBase.Loaded
For Each j In CatalogoJuguetes.Instancia.getAll ComboBox1.Items.Add(j) Next End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles Button1.Click
Dim precio = Double.Parse(TextBox1.Text.ToString) Dim nombre = TextBox2.Text.ToString Dim edad = TextBox3.Text.ToString Dim id = Integer.Parse(TextBox4.Text.ToString)
juguete = New Juguete(precio, edad, nombre, id) CatalogoJuguetes.Instancia.add(juguete) ComboBox1.Items.Add(juguete)
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles Button2.Click ComboBox1.Items.Remove(juguete)
CatalogoJuguetes.Instancia.remove(juguete)
End Sub
AL AÑADIR ME LO AÑADE AL COMBOBOX Y SUPUESTAMENTE EN LA BASE DE DATOS PERO CUANDO VUELVE A EJECUTARLO, ESTE NO ME APARECE, BORRAR ME SALTA UN InvalidCastException Y LA VERDAD NO SÉ SOLUCIONARLO Y EL TERCERO QUERRIA ACTUALIZARLO .. SI PUEDEN AYUDARME GRACIAS
|
|
|
17
|
Programación / .NET (C#, VB.NET, ASP) / Crear Timer desde una clase y luego llamarlo en un evento para hacerlo funconar
|
en: 6 Junio 2013, 01:34 am
|
Hola, quiero crear un esta clase Timer para mover unos villanos en un tablero aleatoriamente ,el codigo es el siguiente.. Imports System Imports System.Timers
Public Class Timerclase Private Shared aTimer As New System.Windows.Forms.Timer() Shared villa1 As Villano Shared villa2 As Villano Shared villa3 As Villano Shared heroe As Heroe
Private Shared Sub timermovervillanos(ByVal myObject As Object, _ ByVal myEventsArgs As EventArgs)
If heroe.GetMuerto = False Then If villa1.GetMuerto = False Then villa1.move() End If If villa2.GetMuerto = False Then villa2.move() End If If villa3.GetMuerto = False Then villa3.move() End If End If main() End Sub
Public Shared Sub main() AddHandler aTimer.Tick, AddressOf timermovervillanos aTimer.Enabled = True aTimer.Interval = 500 aTimer.Start()
End Sub
End Class con un timer arrastrado desde controles y poniendo solo los if me va pero yo quiero controlar este timer para que luego lo llame en un metodo y funcione,
|
|
|
19
|
Programación / Programación General / Como controlar los eventos del tablero y actualizar interfaz
|
en: 27 Mayo 2013, 19:54 pm
|
como podría hacerlo se que es tipo: Private Sub Movimi_EventHandler(...) Handles _tablero.MovimientoEvent pero no sé sacarle punta a esto.. lo que pretendo es que desde ese metodo se llame y se vaya actualizando mi interfaz al mover un objeto picturebox sobre un tablelayout.. y APARTE este código tambien no se sacarle punta! Private Sub Form2_KeyDown(...) Handles MyBase.KeyDown Select Case e.KeyCode Case Keys.Up [b]_tablero.MoveUpH()[/b] -->[i] lo que pretendo con esta función es mover este objeto [b]( Picturebox)[/b] en mi tablelayout hacia arriba, del cual le he asignado unas dimensiones de 8X8, y el metodo de arriba [b]actualize la interfaz para moverlo por su tablero de las dimensiones dichas[/b].[/i]
End Select También os facilito mi codigo del tablero: Function moveUpH(ByVal heroe As Heroe) As Boolean Dim coord = calculaCoordenada(heroe, 0, -1) Return moveH(heroe, coord) End Function y este... Function moveH(ByVal heroe As Heroe, ByVal c As Coordenadas) As Boolean ' Aquí lo que se hace cuando se mueve el héroe
If (TypeOf (e) Is Bloques) Then Return False ElseIf (TypeOf (p) Is Pastillas) Then If (TypeOf (p) Is PastillaNormal) Then
' la consumo
Return True ElseIf (TypeOf (p) Is Vitamina) Then
' Gano al villano
Return True End If End If
If (TypeOf (e) Is Villano) Then
' Duelo
Return False End If Return True
End Function
|
|
|
20
|
Programación / .NET (C#, VB.NET, ASP) / Duda sobre asignar un acceso de propiedad a la propiedad o utilizar su valor
|
en: 21 Mayo 2013, 20:03 pm
|
Buenas, estoy creando un videojuego en el cual tengo que mover un objeto de tipo "Heroe" en un TableLayoutPanel de 8*8... Public Class Casilla Inherits Encasillable Dim e As Elemento Dim p As Pastilla ' Sub New(ByVal elemento As Elemento, ByVal pastilla As Pastilla) ' elemento = e ' pastilla = p ' End Sub Public Property setElemento() As Elemento Get Return e End Get Set(ByVal value As Elemento) e = value End Set End Property End Class
y luego.. en clase Tablero Function addElemento(ByVal elemento As Elemento, ByVal x As Integer, ByVal y As Integer) dimensiones(x, y).setElemento(elemento) Return True End Function
al hacer esto me salta el error, o qué tengo que hacer exactamente para que el setElemento me "trague" dicho "elemento"? Disculpad, soy novato en esto ( Al ser posible explicadlo "para tontos".GRACIAS
|
|
|
|
|
|
|