Frage zu ListView

Nummer11

Mitglied
Bei meinem Code wird eine Fehlermeldung angezeigt, dass der Typ ListView keine Parameter keine Parameter (akzeptiert?)
"Type 'javax.swing.text.html.ListView' does not have Type Parameters."

Als Typarameter habe ich "Song" eingesetzt, was eine andere von mir erstellte Klasse ist.
So sieht der Code aus:
Java:
package MP3_Player;

import javafx.collections.ModifiableObservableListBase;

import javax.swing.text.html.ListView;


public class Playlist implements IPlaylist {

    private ListView<Song> liste = new ListView<Song>();              

    public Playlist(){

    }

  

}
 
dein link zeigt die Einträge eines FXML Dokuments. dieses wird mit der Main.java oder mit dem MainWindowsController gesteuert. Man kann es mit dem Internen Edit fxml view in Eclipse öffnen und verändern oder mit dem Scenebuilder (extradownload ) öffnen. Im Scenebuilder kann man im letzten view die eingerichteten OnAktions methoden und die FXML componenten kopieren und in den MainWindowsController einfügen.
 
sorry falsch erkannt, <String> ist natürlich der Platzhalter für den fx id des im FXML dokument aufgeführten Listview. Im tutorial was ich dir gerade gesendet habe wird ein WindowsController für die Steuerung dieses Feldes ListView benutzt.Bevor irgend welche Werte eingegeben werden können muß im WindowsController "@FXML private ListView meinview; " werden.
 
Code:
import javafx.application.Application;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.stage.Stage;

/**
*
* @author Juergen
*/
public class JavaFXApplication27 extends Application {
   
    @Override
    public void start(Stage stage) throws Exception {
        Parent root = FXMLLoader.load(getClass().getResource("FXMLDocument.fxml"));
       
        Scene scene = new Scene(root);
       
        stage.setScene(scene);
        stage.show();
    }

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        launch(args);
    }
   
}
Code:
<?xml version="1.0" encoding="UTF-8"?>

<?import java.lang.*?>
<?import java.util.*?>
<?import javafx.scene.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>

<AnchorPane id="AnchorPane" prefHeight="200" prefWidth="320" xmlns:fx="http://javafx.com/fxml/1" fx:controller="javafxapplication27.FXMLDocumentController">
    <children>
        <Button layoutX="126" layoutY="90" text="Click Me!" onAction="#handleButtonAction" fx:id="button" />
        <ListView layoutX="126" layoutY="120" minHeight="16" minWidth="69" fx:id="meinlistVkuck" />
    </children>
</AnchorPane>
Code:
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package javafxapplication27;

import java.net.URL;
import java.util.ResourceBundle;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.Label;
import javafx.scene.control.ListView;

/**
*
* @author Juergen
*/
public class FXMLDocumentController implements Initializable {
   
    @FXML
    private ListView meinlistVkuck;
   
    @FXML
    private void handleButtonAction(ActionEvent event) {
        System.out.println("You clicked me!");
       // meinlistVkuck.XXXXXXXXX
    }
   
    @Override
    public void initialize(URL url, ResourceBundle rb) {
        // TODO
    }   
   
}
 
ListView gibt es von Swing und JavaFX . Sorry du hast Swing importiert!Absicht? Ansonsten Lösche Import und achte bei den eingeblendeten Importen das es JavaFX ist.
 
Code:
 @FXML
    private ListView meinlistVkuck;
ObservableList names = FXCollections.observableArrayList(
          "Julia", "Ian", "Sue", "Matthew", "Hannah", "Stephan", "Denise");
ListView listView = new ListView (names);
    @FXML
    private void handleButtonAction(ActionEvent event) {
        System.out.println("You clicked me!");
       meinlistVkuck.setItems(names);
    }

Vieleicht hift dir das weiter. (korrigireter code im Controller) und anstatt "names" Song und mit dem "<String> Song "ist gemeint das die Liste Song lauter Strings enthält
 

Neue Themen


Zurück
Oben