%Teilweise Erzeugt mit dem LaTeX-Generator: http://latex.sehnot.de

%Schriftgröße, Layout, Papierformat, Art des Dokumentes
\documentclass[10pt,oneside,a4paper]{scrartcl}

%Einstellungen der Seitenränder
\usepackage[left=2cm,right=2cm,top=1.5cm,bottom=1.5cm,includeheadfoot]{geometry}

%neue Rechtschreibung
\usepackage[ngerman]{babel}

%Umlaute ermöglichen
\usepackage[utf8]{inputenc}

%Gesamtseitenzahl
\usepackage{lastpage}

% Kopf- und Fußzeile
\usepackage[automark]{scrpage2}

%Quellcode-Listings
\usepackage{listings}

%Hyperlinks
\usepackage{hyperref}

%Kopfzeile
\ihead{Java}
\chead{}
\ohead{http://kohnlehome.de/java/javafx-controls.pdf}
\setheadsepline{0.5pt}

%Fußzeile
\setfootsepline{0.5pt}
\ifoot{Franz Kohnle}
\cfoot{Seite \thepage\ von  \pageref{LastPage}}
\ofoot{\today}

%Bilder
\usepackage{graphicx}
\usepackage{graphics}

\pagestyle{scrheadings}

%\pdfpagewidth=\paperwidth
%\pdfpageheight=\paperheight

\begin{document}

% Überschrift 
\begin{center}
\LARGE % Schriftgröße
\bfseries % Fettdruck
\sffamily % Serifenlose Schrift
JavaFX - Controls
\end{center}


\begin{tabular}{l|l}
FXML & Eventhandler \\ \hline \hline

% Label
\begin{minipage}{2.8in}
\begin{verbatim}

<Label fx:id = "label"
       text = "Ausgabe" />
       
\end{verbatim}
\end{minipage}
&
\begin{minipage}{3.3in}
\begin{verbatim}

---
\end{verbatim}
\end{minipage}
\\ \hline

% Button
\begin{minipage}{1in}
\begin{verbatim}

<Button fx:id = "button"
        text = "Drück mich" />
\end{verbatim}
\end{minipage}
&
\begin{minipage}{1in}
\begin{verbatim}

button.setOnAction( (event) -> {
    ...
});

\end{verbatim}
\end{minipage}
\\ \hline

% TextField / TextArea
\begin{minipage}{1in}
\begin{verbatim}


<TextField fx:id = "textField"
           text = "Eingabe" />


<TextArea ... />

\end{verbatim}
\end{minipage}
& 
\begin{minipage}{1in}
\begin{verbatim}

textField.setOnAction( (event) -> {
    ...
    ... = textField.getText();
    ...
});

textField.textProperty().addListener (
    (observable, alterWert, neuerWert) -> { 
    ...
});

\end{verbatim}
\end{minipage}
\\ \hline

% Slider
\begin{minipage}{1in}
\begin{verbatim}

<Slider fx:id = "slider"
        min = "0"
        max = "100" 
        value = "50" />

\end{verbatim}
\end{minipage}
& 
\begin{minipage}{1in}
\begin{verbatim}

slider.valueProperty().addListener (
    (observable, alterWert, neuerWert) -> {
    ...
    ... = neuerWert;
    ...
});
    
\end{verbatim}
\end{minipage}
\\ \hline

% CheckBox
\begin{minipage}{1in}
\begin{verbatim}

<CheckBox fx:id = "checkBox"
          text = "Option"
          selected = "true" />

\end{verbatim}
\end{minipage}
& 
\begin{minipage}{1in}
\begin{verbatim}

checkbox.setOnAction( (event) -> {
    ...
    ... = checkBox.isSelected();
    ...
});

\end{verbatim}
\end{minipage}
\\ \hline

% RadioButton
\begin{minipage}{1in}
\begin{verbatim}

<...Pane>
<fx:define>
    <ToggleGroup fx:id = "gruppe" />
</fx:define>
<children>
    <RadioButton fx:id = "radio1"
        text = "A"
        toggleGroup = "$gruppe" />
    <RadioButton text = "B"
        toggleGroup = "$gruppe" />
    <RadioButton text = "C"
        toggleGroup = "$gruppe" />
</children>
</...Pane>

\end{verbatim}
\end{minipage}
& 
\begin{minipage}{1in}
\begin{verbatim}

radio1.selectedProperty().addListener (
    (observable,  alterWert, neuerWert) -> {
    ...
});

gruppe.selectedToggleProperty().addListener (
    (observable, alterWert, neuerWert) -> {
    ...
    ... = group.getSelectedToggle();
    ...
});

\end{verbatim}
\end{minipage}
\\ \hline

% ChoiceBox
\begin{minipage}{1in}
\begin{verbatim}

<ChoiceBox fx:id = "choiceBox"
           value = "Berta">
    <String fx:value = "Anna" />
    <String fx:value = "Berta" />
    <String fx:value = "Carla" />
</ChoiceBox>

\end{verbatim}
\end{minipage}
& 
\begin{minipage}{1in}
\begin{verbatim}

choiceBox.getSelectionModel()
    .selectedIndexProperty().addListener( 
    (observable,  alterWert, neuerWert) -> {
    ...
    ... = neuerWert;
    ...
});

\end{verbatim}
\end{minipage}
\\ \hline


\end{tabular}

\end{document}
