Skip to content
Snippets Groups Projects
Commit b379d97b authored by Jan Schubert's avatar Jan Schubert
Browse files

Runde Tasten und Leuchten II

parent cba468d2
No related branches found
No related tags found
No related merge requests found
......@@ -5,11 +5,10 @@ import javafx.fxml.FXML;
import javafx.scene.control.*;
import javafx.scene.shape.Circle;
import java.util.ArrayList;
public class GuiController {
ArrayList<MenuItem> mItem;
private ArrayList<MenuItem> mItem;
private final static String[] str= {"I", "II", "III", "IV", "V"};
private final static String[] num ={"1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26"};
private final static String[] bs ={"A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"};
......@@ -237,47 +236,83 @@ public class GuiController {
private Label lblN;
@FXML
void löschen() {
textEingabe=textEingabe.substring(0,textEingabe.length()-1);
tfrein.setText(textEingabe);
}
private Circle circE;
@FXML
void btnempfangen() {
}
private Circle circR;
@FXML
void btnsenden() {
}
private Circle circT;
/**
* Methode zum setzen des menuButton Textes auf das ausgewählte MenuItem
* @param mb : MenuButton der Walze
* @param mi : MenuItem
*/
private void listener(MenuButton mb, MenuItem mi){
mb.setText(mi.getText());
}
@FXML
private Circle circZ;
@FXML
private Circle circU;
@FXML
private Circle circI;
@FXML
private Circle circO;
@FXML
private Circle circA;
@FXML
private Circle circS;
@FXML
private Circle circD;
@FXML
private Circle circF;
@FXML
private Circle circG;
@FXML
private Circle circH;
@FXML
private Circle circJ;
@FXML
private Circle circK;
@FXML
private Circle circP;
@FXML
private Circle circY;
@FXML
private Circle circX;
@FXML
private Circle circC;
@FXML
private Circle circV;
@FXML
private Circle circB;
@FXML
private Circle circN;
@FXML
private Circle circM;
@FXML
private Circle circL;
@FXML
private Circle circW;
@FXML
private Circle circQ;
/**
* Methode zur Erstellung der Einträge und Action Listener für die einzelnen Menüs
* @param button : Button für die die Einträge erstellt werden sollen
*/
private void menu(MenuButton button, String[] str) {
mItem = new ArrayList<>();
for (int i = 0; i < str.length; i++) {
//Eintrag aus str der Arraylist mi hinzufügen
mItem.add(new MenuItem(str[i]));
//MenuItem mi dem Button button hinzufügen
button.getItems().add(mItem.get(i));
int finalI = i;
//Listener für die einzelnen Einträge
ArrayList<MenuItem> finalMi = mItem;
mItem.get(i).setOnAction(e -> {
listener(button, finalMi.get(finalI));
});
}
}
@FXML
void initialize() {
//Einträge für Walzen
......@@ -367,36 +402,77 @@ public class GuiController {
assert lblM != null : "fx:id=\"lblM\" was not injected: check your FXML file 'gui.fxml'.";
assert lblN != null : "fx:id=\"lblN\" was not injected: check your FXML file 'gui.fxml'.";
leuchten(btnA, lblA);
leuchten(btnB, lblB);
leuchten(btnC,lblC);
leuchten(btnD, lblD);
leuchten(btnE, lblE);
leuchten(btnF, lblF);
leuchten(btnG, lblG);
leuchten(btnH, lblH);
leuchten(btnI, lblI);
leuchten(btnJ,lblJ);
leuchten(btnK, lblK);
leuchten(btnL, lblL);
leuchten(btnM, lblM);
leuchten(btnN, lblN);
leuchten(btnO, lblO);
leuchten(btnP, lblP);
leuchten(btnQ,lblQ);
leuchten(btnR, lblR);
leuchten(btnS, lblS);
leuchten(btnT, lblT);
leuchten(btnU, lblU);
leuchten(btnV, lblV);
leuchten(btnW, lblW);
leuchten(btnX,lblX);
leuchten(btnY, lblY);
leuchten(btnZ, lblZ);
leuchtencirc(btnA,circ);
leuchten(btnA, circA);
leuchten(btnB, circB);
leuchten(btnC,circC);
leuchten(btnD, circD);
leuchten(btnE, circE);
leuchten(btnF, circF);
leuchten(btnG, circG);
leuchten(btnH, circH);
leuchten(btnI, circI);
leuchten(btnJ,circJ);
leuchten(btnK, circK);
leuchten(btnL, circL);
leuchten(btnM, circM);
leuchten(btnN, circN);
leuchten(btnO, circO);
leuchten(btnP, circP);
leuchten(btnQ,circQ);
leuchten(btnR, circR);
leuchten(btnS, circS);
leuchten(btnT, circT);
leuchten(btnU, circU);
leuchten(btnV, circV);
leuchten(btnW, circW);
leuchten(btnX,circX);
leuchten(btnY, circY);
leuchten(btnZ, circZ);
//TODO: Leuchten und Tasten ordnen
}
@FXML
private Button Q;
void löschen() {
textEingabe=textEingabe.substring(0,textEingabe.length()-1);
tfrein.setText(textEingabe);
//TODO: anpassen, wenn kein Text da ist
}
@FXML
void btnempfangen() {
}
@FXML
void btnsenden() {
}
/**
* Methode zum setzen des menuButton Textes auf das ausgewählte MenuItem
* @param mb : MenuButton der Walze
* @param mi : MenuItem
*/
private void listener(MenuButton mb, MenuItem mi){
mb.setText(mi.getText());
}
/**
* Methode zur Erstellung der Einträge und Action Listener für die einzelnen Menüs
* @param button : Button für die die Einträge erstellt werden sollen
*/
private void menu(MenuButton button, String[] str) {
mItem = new ArrayList<>();
for (int i = 0; i < str.length; i++) {
//Eintrag aus str der Arraylist mi hinzufügen
mItem.add(new MenuItem(str[i]));
//MenuItem mi dem Button button hinzufügen
button.getItems().add(mItem.get(i));
int finalI = i;
//Listener für die einzelnen Einträge
ArrayList<MenuItem> finalMi = mItem;
mItem.get(i).setOnAction(e -> {
listener(button, finalMi.get(finalI));
});
}
}
/**
* Auswertung welcher Button gedrückt wurde
......@@ -432,7 +508,6 @@ public class GuiController {
if (e.getSource() == btnX) setText(btnX);
if (e.getSource() == btnY) setText(btnY);
if (e.getSource() == btnZ) setText(btnZ);
if (e.getSource()==Q) setText(Q);
}
/**
* schreibt Buchstaben des gedrückten Knopfes in Textfeld tfrein
......@@ -444,30 +519,14 @@ public class GuiController {
tfrein.setText(textEingabe);
}
}
private void leuchten(Button taste, Circle leuchte){
@FXML
private Circle circ;
private void leuchtencirc(Button taste, Circle leuchte){
taste.setOnMousePressed(mouseEvent -> {
leuchte.setStyle("-fx-fill: #FFA500");
});
taste.setOnMousePressed(mouseEvent -> {leuchte.setStyle("-fx-fill: #FFA500");});
taste.setOnMouseReleased(mouseEvent -> {
leuchte.setStyle("-fx-background-color: "+ taste.getBackground());
leuchte.setStyle("-fx-border-color: #000000");
});
}
private void leuchten(Button taste, Label leuchte){
taste.setOnMousePressed(mouseEvent -> {
leuchte.setStyle("-fx-background-color: #FFA500");
});
taste.setOnMouseReleased(mouseEvent -> {
leuchte.setStyle("-fx-background-color: "+ taste.getBackground());
// leuchte.setStyle("-fx-border-color: #000000");
});
}
/**
* Setzt die Anzeige des entsprechende Gui-Element auf die entsprechende Walze
* ->d.h. welche Walze sitzt auf welcher Position
......
This diff is collapsed.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment