安徽网站建设科技wordpress数据库表
- 作者: 五速梦信息网
- 时间: 2026年03月21日 10:02
当前位置: 首页 > news >正文
安徽网站建设科技,wordpress数据库表,优质的wordpress主题,小说推文万能关键词*16.7 (设置时钟的时间) 编写一个程序#xff0c;显示一个时钟#xff0c;并通过在三个文本域中输入小时、分钟和秒 钟来设置时钟的时间#xff0c;如图16-38b 所示。使用程序清单14-21的ClockPane改变时钟大小使其居于面板中央 习题思路
实例化一个ClockPane(在程序清单1…*16.7 (设置时钟的时间) 编写一个程序显示一个时钟并通过在三个文本域中输入小时、分钟和秒 钟来设置时钟的时间如图16-38b 所示。使用程序清单14-21的ClockPane改变时钟大小使其居于面板中央 习题思路
实例化一个ClockPane(在程序清单14_21)创建一个HBox布局新建三个Label和三个TextField添加到HBox布局中为三个TextField分别注册一个键盘事件当在输入框中按下Enter键且内容不为空时 调用ClockPane的设置时间的方法如clockPane.setHour(hour)创建一个BorderPane把ClockPane设置在中心把HBox设置在底部创建Scene并运行代码 代码示例 编程练习题16_7SetClockTime.java package chapter_16;import chapter_14.程序清单14_21ClockPane;
import javafx.application.Application;
import javafx.geometry.Insets;
import javafx.geometry.Pos;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.control.TextField;
import javafx.scene.input.KeyCode;
import javafx.scene.layout.BorderPane;
import javafx.scene.layout.HBox;
import javafx.stage.Stage;public class 编程练习题16_7SetClockTime extends Application{Overridepublic void start(Stage primaryStage) throws Exception {程序清单14_21ClockPane clockPane new 程序清单14_21ClockPane();HBox hBox new HBox(5);hBox.setPadding(new Insets(5, 5, 5, 5));hBox.setAlignment(Pos.CENTER);Label lbHour new Label(Hour);TextField tfHour new TextField();Label lbMinute new Label(Minute);TextField tfMinute new TextField();Label lbSecond new Label(Second);TextField tfSecond new TextField();tfHour.setPrefWidth(40);tfMinute.setPrefWidth(40);tfSecond.setPrefWidth(40);hBox.getChildren().addAll(lbHour,tfHour, lbMinute,tfMinute, lbSecond,tfSecond);tfHour.setOnKeyPressed(e -{if(e.getCode() KeyCode.ENTERtfHour.getText()!) {int hour Integer.parseInt(tfHour.getText());clockPane.setHour(hour);}});tfMinute.setOnKeyPressed(e -{if(e.getCode() KeyCode.ENTERtfMinute.getText()!) {int minute Integer.parseInt(tfMinute.getText());clockPane.setMinute(minute);}});tfSecond.setOnKeyPressed(e -{if(e.getCode() KeyCode.ENTERtfSecond.getText()!) {int second Integer.parseInt(tfSecond.getText());clockPane.setSecond(second);}});BorderPane borderPane new BorderPane();borderPane.setCenter(clockPane);borderPane.setBottom(hBox);Scene scene new Scene(borderPane,268, 300);primaryStage.setTitle(编程练习题16_7SetClockTime);primaryStage.setScene(scene);primaryStage.show();}public static void main(String[] args) {Application.launch(args);}
}程序清单14_21ClockPane.java package chapter_14;import java.util.Calendar;
import java.util.GregorianCalendar;import javafx.scene.layout.Pane;
import javafx.scene.paint.Color;
import javafx.scene.shape.Circle;
import javafx.scene.shape.Line;
import javafx.scene.text.Text;public class 程序清单14_21ClockPane extends Pane{private int hour;private int minute;private int second;private boolean hourHandVisible true;private boolean minuteHandVisible true;private boolean secondHandVisible true;private double w 250,h 250;public 程序清单14_21ClockPane() {setCurrentTime();}public 程序清单14_21ClockPane(int hour) {this.hour hour;minute 0;paintClock();}public 程序清单14_21ClockPane(int hour, int minute) {this.hour hour;this.minute minute;second 0;paintClock();}public 程序清单14_21ClockPane(int hour, int minute, int second) {this.hour hour;this.minute minute;this.second second;paintClock();}public int getHour() {return hour;}public void setHour(int hour) {this.hour hour;paintClock();}public int getMinute() {return minute;}public void setMinute(int minute) {this.minute minute;paintClock();}public int getSecond() {return second;}public void setSecond(int second) {this.second second;paintClock();}public double getW() {return w;}public void setW(double w) {this.w w;paintClock();}public double getH() {return h;}public void setH(double h) {this.h h;paintClock();}public boolean getHourHandVisible() {return hourHandVisible;}public boolean getMinuteHandVisible() {return minuteHandVisible;}public boolean getSecondHandVisible() {return secondHandVisible;}public void setHourHandVisible(boolean hourHandVisible) {this.hourHandVisible hourHandVisible;paintClock();}public void setMinuteHandVisible(boolean minuteHandVisible) {this.minuteHandVisible minuteHandVisible;paintClock();}public void setSecondHandVisible(boolean secondHandVisible) {this.secondHandVisible secondHandVisible;paintClock();}public void setCurrentTime() {Calendar calendar new GregorianCalendar();this.hour calendar.get(Calendar.HOUR_OF_DAY);this.minute calendar.get(Calendar.MINUTE);this.second calendar.get(Calendar.SECOND);paintClock();}protected void paintClock() {double clockRadius Math.min(w, h) * 0.8 * 0.5;double centerX w / 2;double centerY h / 2;Circle circle new Circle(centerX, centerY, clockRadius);circle.setFill(Color.WHITE);circle.setStroke(Color.BLACK);double sLength clockRadius * 0.8;double sencondX centerX sLength * Math.sin(second * (2*Math.PI/60));double sencondY centerY - sLength * Math.cos(second * (2*Math.PI/60));Line sLine new Line(centerX, centerY, sencondX, sencondY);sLine.setStroke(Color.RED);double mLength clockRadius * 0.65;double xMinute centerX mLength * Math.sin(minute * (2 * Math.PI / 60));double minuteY centerY - mLength * Math.cos(minute * (2 * Math.PI / 60));Line mLine new Line(centerX, centerY, xMinute, minuteY);mLine.setStroke(Color.BLUE);double hLength clockRadius * 0.5;double hourX centerX hLength *Math.sin((hour % 12minute/60.0) * (2*Math.PI / 12));double hourY centerY - hLength * Math.cos((hour % 12 minute / 60.0) * (2 * Math.PI / 12));Line hLine new Line(centerX, centerY, hourX, hourY);hLine.setStroke(Color.GREEN);getChildren().clear();getChildren().add(circle);if(getHourHandVisible()true) {getChildren().add(hLine);}if (getMinuteHandVisible()true) { getChildren().add(mLine);}if(getSecondHandVisible()true) {getChildren().add(sLine);}for(int i -90;i 270;i30) {double angle Math.toRadians(i);double x centerX-2 (clockRadius-20) * Math.cos(angle); double y centerY3 (clockRadius-20) * Math.sin(angle);double LineX centerX-7 (clockRadius-7) * Math.cos(angle); double LineY centerY4 (clockRadius-7) * Math.sin(angle);int time i/303;if(time 0)time 12;Text t new Text(x,y,time);Text line new Text(LineX,LineY,—);line.setRotate(i);getChildren().add(t);getChildren().add(line);}for(int i -90;i 270;i6) {double angle Math.toRadians(i);double LineX centerX-3 (clockRadius-3) * Math.cos(angle); double LineY centerY4.5 (clockRadius-2.5) * Math.sin(angle);Text line new Text(LineX,LineY,-);line.setRotate(i);getChildren().add(line);}}
}结果展示
- 上一篇: 安徽网站建设服务怎么做微信小说网站
- 下一篇: 安徽网站建设论坛烟台外贸网站建设公司
相关文章
-
安徽网站建设服务怎么做微信小说网站
安徽网站建设服务怎么做微信小说网站
- 技术栈
- 2026年03月21日
-
安徽网站关键词优化排名地区网站建设
安徽网站关键词优化排名地区网站建设
- 技术栈
- 2026年03月21日
-
安徽网站备案要多少时间ps抠图教程
安徽网站备案要多少时间ps抠图教程
- 技术栈
- 2026年03月21日
-
安徽网站建设论坛烟台外贸网站建设公司
安徽网站建设论坛烟台外贸网站建设公司
- 技术栈
- 2026年03月21日
-
安徽网站建设网站运营营销策划公司经营范围包括哪些
安徽网站建设网站运营营销策划公司经营范围包括哪些
- 技术栈
- 2026年03月21日
-
安徽网站建设优化推广wordpress主题透明
安徽网站建设优化推广wordpress主题透明
- 技术栈
- 2026年03月21日






