원클릭으로
javafx-midi-keyboard-controller
Build JavaFX piano-keyboard controls that map MIDI notes to white and black keys and show note state clearly.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Build JavaFX piano-keyboard controls that map MIDI notes to white and black keys and show note state clearly.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Build JavaFX 3D modeling tools and print/export workflows with isolated geometry generation and preview rendering.
Choose and integrate mature third-party JavaFX control libraries for forms, productivity widgets, theming, and developer workflow support.
Build JavaFX terminal emulators or shell-style console panes with background process I/O, ANSI handling, and safe FX-thread updates.
Build node-based JavaFX workflow editors, graph canvases, and visual programming surfaces with clean model separation.
Animate JavaFX UIs with Timeline, Transition, Canvas, and AnimationTimer-based render loops.
Manage the JavaFX Application lifecycle, primary stage setup, startup sequencing, and shutdown behavior.
| name | javafx-midi-keyboard-controller |
| description | Build JavaFX piano-keyboard controls that map MIDI notes to white and black keys and show note state clearly. |
| triggers | ["javafx piano keyboard","midi keyboard javafx","virtual piano javafx","midi note mapping javafx"] |
| compatibility | {"java":"17+","javafx":"21+"} |
| category | ui-advanced |
| tags | ["midi","piano","keyboard","note-mapping","controls"] |
| metadata | {"scope":"repository","maturity":"starter"} |
| allowed-tools | ["view","rg","apply_patch"] |
Use this skill when a JavaFX app needs a virtual piano, a MIDI-driven note visualizer, or a custom keyboard control that tracks pressed and released notes.
import java.util.HashMap;
import java.util.Map;
import javafx.scene.layout.Pane;
import javafx.scene.paint.Color;
import javafx.scene.shape.Rectangle;
public class PianoKeyboard extends Pane {
private final Map<Integer, Rectangle> whiteKeys = new HashMap<>();
public PianoKeyboard() {
double whiteKeyWidth = 24;
int[] midiNotes = {60, 62, 64, 65, 67, 69, 71, 72};
for (int i = 0; i < midiNotes.length; i++) {
Rectangle key = new Rectangle(i * whiteKeyWidth, 0, whiteKeyWidth, 120);
key.setFill(Color.WHITE);
key.setStroke(Color.BLACK);
whiteKeys.put(midiNotes[i], key);
getChildren().add(key);
}
}
public void press(int note) {
Rectangle key = whiteKeys.get(note);
if (key != null) {
key.setFill(Color.CORNFLOWERBLUE);
}
}
public void release(int note) {
Rectangle key = whiteKeys.get(note);
if (key != null) {
key.setFill(Color.WHITE);
}
}
}
javafx-midi-device-integration when the keyboard reacts to external MIDI input.