プロジェクト

全般

プロフィール

« | » 

リビジョン 40ba3f16

高徹 高橋 徹 さんがほぼ8年前に追加

TornadoFXでMessageBoard(JavaFXで流れるメッセージ)を作った

差分を表示:

.gitignore
### Java
*.class
# NetBeans IDE
build
dist
**/nbproject/private/
# IntelliJ IDEA
out
**/.idea/workspace.xml
**/.idea/tasks.xml
**/.idea/dictionaries
**/.idea/gradle.xml
# Gradle
.gradle
learn/kotlin/javafx/MessageBoard/.idea/artifacts/MessageBoard_jar.xml
<component name="ArtifactManager">
<artifact type="jar" name="MessageBoard:jar">
<output-path>$PROJECT_DIR$/out/artifacts/MessageBoard_jar</output-path>
<root id="archive" name="MessageBoard.jar">
<element id="module-output" name="MessageBoard" />
<element id="extracted-dir" path="$KOTLIN_BUNDLED$/lib/kotlin-stdlib.jar" path-in-jar="/" />
<element id="extracted-dir" path="$KOTLIN_BUNDLED$/lib/kotlin-reflect.jar" path-in-jar="/" />
<element id="extracted-dir" path="$KOTLIN_BUNDLED$/lib/kotlin-test.jar" path-in-jar="/" />
<element id="extracted-dir" path="$KOTLIN_BUNDLED$/lib/kotlin-stdlib-jdk7.jar" path-in-jar="/" />
<element id="extracted-dir" path="$KOTLIN_BUNDLED$/lib/kotlin-stdlib-jdk8.jar" path-in-jar="/" />
</root>
</artifact>
</component>
learn/kotlin/javafx/MessageBoard/.idea/misc.xml
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_9" default="true" project-jdk-name="9.0 (1)" project-jdk-type="JavaSDK">
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_3" default="false" project-jdk-name="9.0" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>
learn/kotlin/javafx/MessageBoard/src/META-INF/MANIFEST.MF
Manifest-Version: 1.0
Main-Class: MessageBoardKt
learn/kotlin/javafx/MessageBoardTornado/.gitignore
*.iml
.idea/libraries/*.xml
.idea/modules.xml
learn/kotlin/javafx/MessageBoardTornado/.idea/.name
MessageBoard
learn/kotlin/javafx/MessageBoardTornado/.idea/compiler.xml
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<bytecodeTargetLevel>
<module name="MessageBoard_main" target="1.9" />
<module name="MessageBoard_test" target="1.9" />
</bytecodeTargetLevel>
</component>
</project>
learn/kotlin/javafx/MessageBoardTornado/.idea/misc.xml
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_9" project-jdk-name="9.0" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>
</project>
learn/kotlin/javafx/MessageBoardTornado/build.gradle
buildscript {
ext.kotlin_version = '1.2.10'
ext.tornado_version = '1.7.15'
repositories {
mavenCentral()
}
dependencies {
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
}
}
group 'com.torutk.messageboardtornade'
version '1.0-SNAPSHOT'
apply plugin: 'kotlin'
repositories {
mavenCentral()
}
dependencies {
compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
compile "no.tornado:tornadofx:$tornado_version"
}
compileKotlin {
kotlinOptions.jvmTarget = "1.8"
}
compileTestKotlin {
kotlinOptions.jvmTarget = "1.8"
}
learn/kotlin/javafx/MessageBoardTornado/settings.gradle
rootProject.name = 'MessageBoard'
learn/kotlin/javafx/MessageBoardTornado/src/main/kotlin/MessageBoardApp.kt
import tornadofx.App
class MessageBoardApp : App(MessageBoardView::class) {
}
learn/kotlin/javafx/MessageBoardTornado/src/main/kotlin/MessageBoardView.kt
import javafx.animation.Animation
import javafx.animation.Interpolator
import javafx.geometry.Point2D
import javafx.scene.paint.Color
import javafx.scene.text.Font
import javafx.scene.text.FontWeight
import javafx.util.Duration
import tornadofx.*
class MessageBoardView : View() {
override val root = stackpane {
val message = text("Hello world. This is JavaFX from Kotlin powered by TornadoFX.") {
fill = Color.DARKMAGENTA
font = Font.font("Serif", FontWeight.SEMI_BOLD, 32.0)
val messageWidth = layoutBounds.width
val messageHeight = layoutBounds.height
translateX = messageWidth
layoutY = messageHeight * 2
move(Duration.seconds(8.0), Point2D(-messageWidth, 0.0), Interpolator.LINEAR, play=true) {
fromX = messageWidth
cycleCount = Animation.INDEFINITE
}
}
prefWidth = message.layoutBounds.width
prefHeight = message.layoutBounds.height * 3
}
}

他の形式にエクスポート: Unified diff