Создание сложного изображения из повторяющегося простого - Java
Формулировка задачи:
Нужно нарисовать N рядов изображений логотипов с M логотипами в каждом ряде. N и M задаются в программе. Для рисования нужно использовать относительные координаты и вложенные циклы.
Решение задачи: «Создание сложного изображения из повторяющегося простого»
textual
Листинг программы
public class Pict extends Application { @Override public void start(Stage primaryStage) { Group rootB = new Group(); Button btn = new Button(); TextField textN = new TextField(); textN.setPromptText("Введите N"); textN.setLayoutX(0); textN.setMaxWidth(80); TextField textM = new TextField(); textM.setPromptText("Введите M"); textM.setLayoutX(100); textM.setMaxWidth(80); btn.setText("Picture"); btn.setLayoutX(200); rootB.getChildren().addAll(textN,textM,btn); BorderPane root = new BorderPane(); btn.setOnAction(new EventHandler<ActionEvent>() { @Override public void handle(ActionEvent event) { System.out.println("Picture"); String SN = textN.getText(); String SM = textM.getText(); int N; int M; VBox vboxN = new VBox(); try{ N=Integer.parseInt(SN); M=Integer.parseInt(SM); for(int i=0;i<N;i++){ HBox hboxM = new HBox(); for(int j=0;j<M;j++){ hboxM.getChildren().add(new ImageView(new Image(this.getClass().getResource("2.jpg").toString()))); } vboxN.getChildren().add(hboxM); } root.setCenter(vboxN); }catch(Exception e){ JOptionPane.showMessageDialog(null, "Введите числа"); } } }); root.setTop(rootB); Scene scene = new Scene(root, 500, 350); primaryStage.setTitle("Hello World!"); primaryStage.setScene(scene); primaryStage.show(); } /** * @param args the command line arguments */ public static void main(String[] args) { launch(args); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д