A la hora de hacer interfaces graficas JavaFX y NetBeans nos brindas varias facilidades, y entre ellas estan las formas basicas predefinidas que pueden ser agregadas al codigo con simplemente arrastrar y soltar.
Formas Basicas de JavaFX
Pero tambien nos permite crear nuestras propias formas y darle efectos. Eso es lo que tratare de explicar en esta parte del tutorial.
Crear nuestras propias formas es sencillo con JavaFX. Basicamente tenemos 2 maneras de hacer una nueva figura o forma:
Combinar formas basicas existentes
Crear formas totalmente nuevas desde 0
Lo primero es sencillo, lo segundo no lo es tanto pero no lo vamos a ver porque al menos por ahora no lo vamos a necesitar, eso lo veremos mucho mas adelante cuando hagamos nuestro primer juego con JavaFX. Asi que ahora vamos a ver como crear una nueva forma combinando otras existentes.
Supongamos que nuestro programa tiene un cuadrado y un rectangulo, simplemente colocados sin hacerles ningun cambio, quedarian asi:
Ahora vamos a ver como combinarlos para crear formas nuevas usando ShapeIntersect y ShapeSubtract.
ShapeIntersect
Esto nos permitira dibujar en pantalla todo aquello que forme parte parte de ambas formas basicas, es decir que dibujara su interseccion.
Nos quedaria algo asi:
El codigo:
scene: Scene {
content: [
ShapeIntersect {
fill: Color.LIGHTGREEN
stroke: Color.GREEN //esto es el color del borde
strokeWidth: 3 //esto determina el ancho de la linea
a:Rectangle {
x: 10, y: 10
width: 140, height: 90
fill: Color.BLACK
}
b:Circle {
centerX: 100, centerY: 100
radius: 40
fill: Color.BLACK
}
}
]
}
Veran que he agregado algunos detalles como un borde para que vayamos viendo de a poco todas las opciones que tenemos en JavaFX.
ShapeSubtract
Esto nos permitira hacer lo contrario, en vez de dibujar la insterseccion de ambos objetos nos dibujara aquellas partes de la primer forma y que no pertenezcan a la segunda. Con lo que nos quedaria algo asi:
Se entiende verdad? Bueno el codigo es el mismo que el anterior nada mas que en vez de usar ShapeIntersect se usa ShapeSubtract
Imagenes
Tambien podemos de manera super sencilla tener un control que muestre una imagen. Pueden usarlo para mostrar imagenes que esten en su disco duro asi:
Como veran todo se vuelve facil en JavaFX, estas cosas no tengo ni idea como hacerlas con otro lenguaje sin usar librerias especializadas. Vimos desde como crear nuestras propias formas hasta como darle efectos, pero como se podran dar cuenta hasta ahora nuestros programas no hacen nada, solo dibujar en pantalla, en la proxima parte de este tutorial veremos como hacer que nuestros programas empiecen a hacer algo y que permitan la interaccion con el usuario Saludos
Ingeniero en Informática. Programador en PHP y Angular.
Lo que mas adoro en el mundo es el conocimiento. Y el anime....y Japón...y el running...y bloguear claro y algunas otras cientos de cosas.
Sigo buscando la manera de hacer mi primer millón.
Bueno que sepas que el tutorial SE SALE !!!!!!!!!!!!! , lo dicho había visto algunas cosillas por ahí sobre JavaFX pero como lo que ví no me gusto mucho lo dejé aparacado, ahora con este tuto estoy volviendo a coger interes la verdad.
Saludos.
skandelabro
12 años atras
Hoal hola la verdad es que estamuy bueno el tutorial
pero al pasar el codigo a netbeans
no funa y me tira errores
nose si me puedes ayudar :)
saludos
Izack
12 años atras
Hola!
Muy buena web!
Esta chila!
Oye, me aparecieron errores en el netbeans, al colocar el ShapeSubtract,
desde ahi me marcan los errores, ya tengo los imports, he intentado arreglar el codigo pero no se deja, no se quitan. Tambien tengo instalado los plugins de Javafx, pero aun asi no funciona, solo lo hizo para el ejemplo anterior, cuando creamos el rentagulo y el circulo.
Me puedes ayudar?
De antemano Gracias!
Izack
jose galvez
12 años atras
me pregunto si esto puede ser aplicado a open office.
esto + una nueva interfaz puede ponerlo contra office.
@skandelabro: has seguido el tuto desde la parte 1? Podrias decirnos cual es el error que te tira?
@Izack: mmm…a mi me funciona perfecto, estos son los imports, comprueba que tienes los mismos:
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.scene.shape.Circle;
import javafx.scene.shape.Rectangle;
import javafx.scene.shape.ShapeSubtract;
Si aun asi no te funciona avisame plis
@jose: puede, open office esta cambiando la interfaz, pero no recuerdo si estaba por usar javafx o no :P
Izack
12 años atras
Oh, gracias amigo!!!
Ya se arreglo, eran los imports, jeje. Se ve q soy novato en esto, jeje
Excelente blog y muy buen post, realmente llegué a tú blog por casualidad, pero he leído un par de artículos y me han parecido muy interesantes, te seguire leyendo frecuentemente.
:( Hola estimado amigo, me siento muy contento por haber encontrado este tutorial por el que te agradezco mucho. También decir que esta bueno y muy didactico. :help: estaba siguiendo la parte de efectos que no me da resultados, el tultiltext me sale lo siguiente: incompatibles types found : javafx.scene.effect.Shadow required: javafx.scene.Node[] Ocurre cuando uso los efectos en este caso Shadow, también para todos los que usas en este tema. tambien me he fijado en las librerias (Include) y he seguido todo al pie de la letra. Estaré muy agradecido por la ayuda. atentamente: Un seguidor que le esta dando… Leer mas »
Hola Jose, gracias por visitar mi blog y gracias por comentar. Lamentablemente yo no te puedo ayudar pues deje de aprender JavaFX cuando hice la parte 6 o 7 del tuto, decidi dedicarme 100% a aprender KumbiaPHP…aun estoy a la espera de alguien que los quiera continuar pues he visto que a muchos les gustaron los tutos.
El efecto se lo aplicas a un Nodo sino no funciona un texto un
Button { text: «Ejemplo» effect:Shadow { color: Color.BLACK radius: 15 } action: function() {
} }
Edel_310
11 años atras
como giro un circulo sobre su propio eje
Toache_13
10 años atras
AMIGO COMO PUEDO VER LOS BASIC SHAPES EN LA PALETA? ME MUESTRA LA PALETA PERO VACIA, UNO NETBEANS 7.01 CON EL PLUGIN DE JAVAFX 2.0
Bueno que sepas que el tutorial SE SALE !!!!!!!!!!!!! , lo dicho había visto algunas cosillas por ahí sobre JavaFX pero como lo que ví no me gusto mucho lo dejé aparacado, ahora con este tuto estoy volviendo a coger interes la verdad.
Saludos.
Hoal hola la verdad es que estamuy bueno el tutorial
pero al pasar el codigo a netbeans
no funa y me tira errores
nose si me puedes ayudar :)
saludos
Hola!
Muy buena web!
Esta chila!
Oye, me aparecieron errores en el netbeans, al colocar el ShapeSubtract,
desde ahi me marcan los errores, ya tengo los imports, he intentado arreglar el codigo pero no se deja, no se quitan. Tambien tengo instalado los plugins de Javafx, pero aun asi no funciona, solo lo hizo para el ejemplo anterior, cuando creamos el rentagulo y el circulo.
Me puedes ayudar?
De antemano Gracias!
Izack
me pregunto si esto puede ser aplicado a open office.
esto + una nueva interfaz puede ponerlo contra office.
@skandelabro: has seguido el tuto desde la parte 1? Podrias decirnos cual es el error que te tira?
@Izack: mmm…a mi me funciona perfecto, estos son los imports, comprueba que tienes los mismos:
import javafx.stage.Stage;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.scene.shape.Circle;
import javafx.scene.shape.Rectangle;
import javafx.scene.shape.ShapeSubtract;
Si aun asi no te funciona avisame plis
@jose: puede, open office esta cambiando la interfaz, pero no recuerdo si estaba por usar javafx o no :P
Oh, gracias amigo!!!
Ya se arreglo, eran los imports, jeje. Se ve q soy novato en esto, jeje
Gracias!
Seguire con el Tutorial!
Esta muy chilo!
Cualquier duda te comento, :)
Excelente blog y muy buen post, realmente llegué a tú blog por casualidad, pero he leído un par de artículos y me han parecido muy interesantes, te seguire leyendo frecuentemente.
Un saludo :up: .
:) gracias…espero verte por aqui
:( Hola estimado amigo, me siento muy contento por haber encontrado este tutorial por el que te agradezco mucho. También decir que esta bueno y muy didactico. :help: estaba siguiendo la parte de efectos que no me da resultados, el tultiltext me sale lo siguiente: incompatibles types found : javafx.scene.effect.Shadow required: javafx.scene.Node[] Ocurre cuando uso los efectos en este caso Shadow, también para todos los que usas en este tema. tambien me he fijado en las librerias (Include) y he seguido todo al pie de la letra. Estaré muy agradecido por la ayuda. atentamente: Un seguidor que le esta dando… Leer mas »
Hola Jose, gracias por visitar mi blog y gracias por comentar. Lamentablemente yo no te puedo ayudar pues deje de aprender JavaFX cuando hice la parte 6 o 7 del tuto, decidi dedicarme 100% a aprender KumbiaPHP…aun estoy a la espera de alguien que los quiera continuar pues he visto que a muchos les gustaron los tutos.
El efecto se lo aplicas a un Nodo sino no funciona un texto un
Button { text: «Ejemplo» effect:Shadow { color: Color.BLACK radius: 15 } action: function() {
} }
como giro un circulo sobre su propio eje
AMIGO COMO PUEDO VER LOS BASIC SHAPES EN LA PALETA? ME MUESTRA LA PALETA PERO VACIA, UNO NETBEANS 7.01 CON EL PLUGIN DE JAVAFX 2.0