Witam,
robie aplikacje biblioteki , mam tableview i chce aby w tej jednej tabeli po wciesnieciu przycisku mozna bylo wyswietlic albo wszystie ksiazki , albo wszyskich uzytkownikow. Problem polega na tym nie wiem jak ustawic sobie kolumny aby dane w kolumnach byly z klasy "Uzytkownik" jesli wybierze sie opcje "Wyswietl wszystkich uzytkownikow" a jesli wybierze sie opcje "wyswietl wszystkie ksiazki" byly dane z klasy "Ksiazka". Jako typ w kolumnach daje <?,?> nie wiem jak dla kazdej opcji ustawic inny typ.```
import java.io.IOException;
import java.net.URL;
import java.util.ResourceBundle;
import com.sun.deploy.util.Property;
import javafx.beans.value.ObservableValue;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader;
import javafx.fxml.Initializable;
import javafx.scene.Node;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.ComboBox;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableColumn.CellDataFeatures;
import javafx.scene.control.cell.PropertyValueFactory;
import javafx.stage.Stage;
import javafx.util.Callback;
import model.Data;
import model.Uzytkownik;
public class WorkerPaneController implements Initializable {
@FXML
private TableColumn<?, ?> c3;
@FXML
private TableColumn<?, ?> c4;
@FXML
private TableColumn<?, ?> c5;
@FXML
private TableColumn<?, ?> c6;
@FXML
private Button test;
@FXML
private ComboBox<String> wybor;
@FXML
private Button show;
@FXML
private TableColumn<Data, ?> c1;
@FXML
private TableColumn<?, ?> c2;
@Override
public void initialize(URL location, ResourceBundle resources) {
// TODO Auto-generated method stub
this.wybor.getItems().addAll("Książek","Egzemplarzy","Czytelników","Pracowników");
}
@FXML
public void ChangeScene(ActionEvent event) throws IOException{
Parent userMenu= FXMLLoader.load(getClass()
.getResource("/LibDB/view/UserPane.fxml"));
Stage s= new Stage();
s.setTitle("test");
s.setScene(new Scene(userMenu));
s.show();
}
@FXML
public void pokaz(ActionEvent event) throws IOException{
if(wybor.getValue()!=null){
switch(this.wybor.getValue()){
case "Czytelników":
c1.setText("id_czytelnika");
c2.setText("Imie");
c3.setText("Nazwisko");
c4.setText("Wiek");
c5.setText("PESEL");
c6.setText("id_adresu");
break;
case "Pracowników":
c1.setText("id_czytelnika");
c2.setText("Imie");
c3.setText("Nazwisko");
c4.setText("Wiek");
c5.setText("PESEL");
c6.setText("id_adresu");
break;
case "Książek":
c1.setText("id_ksiazki");
c2.setText("Tytul");
c3.setText("Ilosc stron");
c4.setText("ISBN");
c5.setText("Rok Wydania");
c6.setText("id_wydawnictwa");
break;
case "Egzemplarzy":
c1.setText("id_egzemplarza");
c2.setText("Numer katalogowy");
c3.setText("id_Typ okladki");
c4.setText("Numer ksiazki");
c5.setText("opis");
c6.setText("Dostepnosc");
break;
}
}else{
System.out.println("test");
}
}
public void initPracownikow(){
//c1.setCellValueFactory(data -> data.getValue().getUzytkownicy().get(0).getImieProperty());
}
}```