1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Populando tableView

Amigos, estou passando de Swing para javaFX, e não estou conseguindo popular uma tableView aparentemente está tudo correto, os dados ainda estão fixo, mais isso é o de menos, se alguém puder me ajudar a vê pq os dados não estão a aparecendo.

package br.com.farmacia.principal;

import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;

public class Main extends Application {

    private static final String TELA_PRINCIPAL = "/br/com/farmacia/css/Tela.fxml";

    public static void main(String[] start) {
        launch(start);
    }

    @Override
    public void start(Stage stage) throws Exception {

        Parent parent = FXMLLoader.load(getClass().getResource(TELA_PRINCIPAL));
        Scene cena = new Scene(parent);
        stage.setScene(cena);
        stage.setTitle("Medicamentos");
        stage.show();

    }

}
package br.com.farmacia.controller;

import java.net.URL;
import java.util.ResourceBundle;

import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.Button;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.scene.control.TextField;
import javafx.scene.control.cell.PropertyValueFactory;
import br.com.farmacia.mapeamento.Medicamentos;
import br.com.farmacia.negocio.CarregaMedicamento;
import br.com.farmacia.negocio.ItensTable;

public class Controle implements Initializable {

    @FXML
    private TextField txValor;

    @FXML
    private Button btPesquisar;

    @FXML
    private TableView<ItensTable> edtTable;

    @FXML
    private TableColumn<ItensTable, Integer> columnId;

    @FXML
    private TableColumn<ItensTable, String> columnNome;

    @FXML
    private TableColumn<ItensTable, String> columnCategoria;

    @FXML
    private TableColumn<ItensTable, String> columnSintomas;

    private ObservableList<ItensTable> listRemedio = FXCollections
            .observableArrayList();

    @Override
    public void initialize(URL url, ResourceBundle bundle) {

        columnId = new TableColumn<ItensTable, Integer>();
        columnNome = new TableColumn<ItensTable, String>();
        columnCategoria = new TableColumn<ItensTable, String>();
        columnSintomas = new TableColumn<ItensTable, String>();

        this.columnId.setCellValueFactory(new PropertyValueFactory<ItensTable, Integer>("Id"));
        this.columnNome.setCellValueFactory(new PropertyValueFactory<ItensTable, String>("Nome"));
        this.columnCategoria.setCellValueFactory(new PropertyValueFactory<ItensTable, String>("Categoria"));
        this.columnSintomas.setCellValueFactory(new PropertyValueFactory<ItensTable, String>("Sintomas"));

        edtTable = new TableView<ItensTable>();

        CarregaMedicamento load = new CarregaMedicamento();
        load.addMedicamentos(new Medicamentos(1, "Monuril", "Antibiotico",
                "Infeccao"), new Medicamentos(1, "teste", "teste", "teste"));

        for (Medicamentos m : load.getMedicamento()) {

            listRemedio.add(new ItensTable(m.getId(), m.getNome(), m
                    .getCategoria(), m.getSintomas()));
        }

        edtTable.setItems(listRemedio);

    }

}
<?xml version="1.0" encoding="UTF-8"?>

<?import javafx.scene.image.*?>
<?import javafx.scene.*?>
<?import javafx.scene.effect.*?>
<?import javafx.scene.paint.*?>
<?import javafx.scene.text.*?>
<?import javafx.scene.control.*?>
<?import java.lang.*?>
<?import javafx.scene.layout.*?>


<AnchorPane id="panel" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="606.0" prefWidth="624.0" style="-fx-background-color: white;" xmlns="http://javafx.com/javafx/8" 
xmlns:fx="http://javafx.com/fxml/1" fx:controller="br.com.farmacia.controller.Controle">
   <children>
      <TextField id="txValor" layoutX="239.0" layoutY="196.0" prefHeight="25.0" prefWidth="260.0">
         <effect>
            <InnerShadow blurType="ONE_PASS_BOX" choke="0.57" color="#0000002c" />
         </effect>
      </TextField>
      <ComboBox id="edtCombo" layoutX="25.0" layoutY="196.0" prefHeight="25.0" prefWidth="187.0" promptText="Escolha..." />
      <Label layoutX="131.0" layoutY="24.0" text="Farmacia" textFill="#40bc5a">
         <font>
            <Font name="Arial" size="48.0" />
         </font>
      </Label>
      <ImageView disable="true" fitHeight="150.0" fitWidth="200.0" focusTraversable="true" layoutX="424.0" layoutY="4.0" nodeOrientation="INHERIT" opacity="0.32" pickOnBounds="true" preserveRatio="true">
         <image>
            <Image url="br/com/farmacia/image/Enfermagem.jpg" />
         </image>
      </ImageView>
      <TableView id="edtTable" layoutX="25.0" layoutY="271.0" prefHeight="274.0" prefWidth="573.0">
        <columns>
          <TableColumn id="columnId" prefWidth="34.0" text="ID" />
          <TableColumn id="columnNome" prefWidth="176.0" text="Nome" />
            <TableColumn id="columnCategoria" prefWidth="130.0" text="Categoria" />
            <TableColumn id="columnSintomas" prefWidth="231.0" text="Sintomas" />
        </columns>
      </TableView>
      <Button id="edtPesquisar" layoutX="518.0" layoutY="196.0" mnemonicParsing="false" text="Pesquisar">
         <effect>
            <InnerShadow color="#3075340a" />
         </effect>
      </Button>
   </children>
   <effect>
      <InnerShadow color="#15bbd6" />
   </effect>
   <cursor>
      <Cursor fx:constant="CLOSED_HAND" />
   </cursor>
</AnchorPane>
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

1 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags java javafx eclipse ou faça a sua própria pergunta.