N'importe quelle façon de dessiner avec la souris sur un ImageView..je ne sais pas, en utilisant une toile par exemple? MerciJavafx: dessiner sur ImageView avec la souris
3
A
Répondre
6
Je suis venu à ce qui était une assez bonne solution à mon problème .. n'est-ce pas?
AnchorPane anchorRoot;
double initX;
double initY;
ImageView iv = new ImageView(image);
final double maxX = iv.getImage().getWidth();
final double maxY = iv.getImage().getHeight();
anchorRoot.getChildren().add(iv);
iv.setOnMousePressed(new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent me) {
//System.out.println("Clicked, x:" + me.getSceneX() + " y:" + me.getSceneY());
//the event will be passed only to the circle which is on front
initX = me.getSceneX();
initY = me.getSceneY();
me.consume();
}
});
iv.setOnMouseDragged(new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent me) {
//System.out.println("Dragged, x:" + me.getSceneX() + " y:" + me.getSceneY());
if (me.getSceneX() < maxX && me.getSceneY() < maxY) {
Line line = new Line(initX, initY, me.getSceneX(), me.getSceneY());
line.setFill(null);
line.setStroke(Color.RED);
line.setStrokeWidth(2);
anchorRoot.getChildren().add(line);
}
initX = me.getSceneX() > maxX ? maxX : me.getSceneX();
initY = me.getSceneY() > maxY ? maxY : me.getSceneY();
}
});
0
Vous pouvez le faire très facilement avec JavaFX (le fichier de conception (FXML) non représenté, juste montrer comment le code fonctionne) ...
package sample;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.image.PixelWriter;
import javafx.scene.image.WritableImage;
import javafx.scene.paint.Color;
import java.net.URL;
import java.util.ResourceBundle;
public class Controller implements Initializable{
@FXML private ImageView img;
@Override
public void initialize(URL location, ResourceBundle resources) {
Image[] i={null};
i[0]=new Image("file:\\"+"C:\\Users\\Ragib\\Desktop\\a.jpg");
img.setFitHeight(i[0].getHeight());
img.setFitWidth(i[0].getWidth());
img.setImage(i[0]);
img.setOnMouseDragged(event -> {
double x=event.getX();
double y=event.getY();
WritableImage wi=new WritableImage(i[0].getPixelReader(),(int)i[0].getWidth(),(int)i[0].getHeight());
PixelWriter pw=wi.getPixelWriter();
pw.setColor((int)x,(int)y,new Color(0,0,0,1));
i[0]=wi;
img.setImage(i[0]);
});
}
}
Questions connexes
- 1. KineticJS - Dessiner avec la souris
- 2. Android ImageView dessiner
- 3. Dessiner une image chargée avec la souris
- 4. Dessiner un rectangle avec la souris
- 5. imageview dessiner un problème avec asynctask
- 6. Dans la transition de commande sur ImageView dans JavaFX
- 7. Dessiner des calques sur ImageView dans Android
- 8. Dessiner sur une toile via la souris et appuyez sur
- 9. JavaFX mettre la souris cachée au repos
- 10. Comment redimensionner le composant avec glisser la souris dans JavaFX
- 11. JavaFx LineChart Emplacement de la souris Zoom avec ScrollEvent
- 12. JavaFX imageview coordonnées réelles translateX et translateY
- 13. Dessiner un rectangle dans toutes les directions avec javaFX échoue
- 14. Dessiner sous le pointeur de la souris sur le bureau
- 15. Cliquer la souris sur le cercle et dessiner des lignes?
- 16. Comment dessiner Liste Sous ImageView avec des zones transparentes
- 17. android: Meilleure façon de dessiner sur un ImageView?
- 18. Android ImageView Comment dessiner le chemin
- 19. Dessiner du texte sur ImageView ne fonctionne pas
- 20. Comment dessiner une ligne dans ImageView sur Android?
- 21. Dessiner un cercle sur ImageView au point de contact
- 22. Couleur Changer en effet souris en JavaFX
- 23. Gestion des événements de souris dans javafx
- 24. Changer l'icône sur la souris sur
- 25. Comment dessiner une flèche JavaFX? (volet)
- 26. Réutiliser la même ImageView plusieurs fois dans la même scène sur JavaFX
- 27. JavaFX Couper un ImageView à une Ellipse dans un AnchorPane
- 28. javafx et le code css pour changer la couleur de lien hypertexte sur la souris hover
- 29. Je voudrais dessiner des pixels sur une fenêtre avec l'entrée de la souris
- 30. OpenGL - dessiner un polygone avec un clic de souris, le polygone est toujours sur la droite