In meinem Code-Schnipsel! "checkBoxList" hat keine Dateien, die von einem Dateiwähler ausgewählt und darin gespeichert werdenWie benutze ich alle Option in Checkliste in Swing Java?
Kontrollkästchen "tmp" es hat Kontrollkästchen für die Dateien!
Wenn ich die Dateien [checkboxlist] in meinem Panel anzeigen.Es ist nicht aktiviert! Nachdem ich die Option zum Ankreuzen/Deaktivieren habe.
Ich habe den Code unten für Aktivieren/deaktivieren Option
ich wissen müssen, wenn ich die Dateien angezeigt werden! Die Dateien mit überprüft (Tick) Dann kann ich ändern, welche E/untick kann tick anzeigen soll.
Ich steckte auf dieser Logik!
[
EDIT: Ich habe und aktualisiert Antwort für diesen Teil (siehe Bild).
ich hinzufügen select/DeselectAll an der Platte (box) und es funktionierte
box.add(chckbxSelectAll);
& & Ich brauche & neugierig, wie in meinem Panel
]
mein selectAll Checkbox setzenpublic void selectAllMethod() {
Iterator<JCheckBox> i = checkBoxList.iterator();
while (i.hasNext()) {
JCheckBox tmp = i.next();
if (chckbxSelectAll.isSelected()) {
tmp.doClick();
} else {
tmp.setSelected(false);
selectedCounter -= 1;
if (selectedCounter < 0) {
selectedCounter = 0;
}
noOfFileTxt.setText(Integer.toString(selectedCounter));
}
}
}
Hier ist meine Schaltfläche Auswahlmethode zum Auswählen von Ordner und Anzeige in einem Panel mit Check Box
public void chooseDirectoryFrom() {
String tempStr = null;
try {
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
fileChooser = new JFileChooser();
Font font = new Font("Latha", Font.ITALIC, 10);
fileChooser.setFont(new Font("Latha", Font.PLAIN, 13));
fileChooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
fileChooser.setFont(font);
int returnVal = fileChooser.showOpenDialog(frame);
if (returnVal == JFileChooser.APPROVE_OPTION) {
tempStr = fileChooser.getSelectedFile().getCanonicalPath();
}
if (tempStr != null && !tempStr.trim().equals("")) {
searchBox.setText(tempStr);
// Enable the search button
// btnDisplay.setEnabled(true);
} else {
//btnDisplay.setEnabled(false);
}
} catch (Exception e) {
e.printStackTrace();
}
// public void selectToDisplay() { //disabled btn to display
File sourceFolder = null;
Box box = Box.createVerticalBox();
if (boxList.size() != 0) {
middlePanel.remove(scrollPane);
middlePanel.repaint();
frame.repaint();
boxList = new ArrayList<Box>();
checkBoxList = new ArrayList<JCheckBox>();
fileNamesMap = new HashMap<String, String>();
selectedCounter = 0;
noOfFileTxt.setText(Integer.toString(selectedCounter));
}
sourceFolder = new File(searchBox.getText());
File[] sourceFilesList = sourceFolder.listFiles();
JCheckBox cb1 = null;
for (int i = 0; i < sourceFilesList.length; i++) {
if (sourceFilesList[i].isFile() & sourceFilesList[i].getName().endsWith(".txt")) {
fileNamesMap.put(sourceFilesList[i].getAbsolutePath(), sourceFilesList[i].getName());
cb1 = new JCheckBox(sourceFilesList[i].getAbsolutePath());
cb1.setFont(new Font("Latha", Font.BOLD, 20));
box.add(cb1);
checkBoxList.add(cb1);
cb1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (((AbstractButton) e.getSource()).isSelected()) {
selectedCounter += 1;
} else {
selectedCounter -= 1;
if (selectedCounter < 0) {
selectedCounter = 0;
}
}
noOfFileTxt.setText(Integer.toString(selectedCounter));
}
});
}
}
boxList.add(box);
scrollPane = new JScrollPane(box);
scrollPane.setPreferredSize(new Dimension(1050, 350));
scrollPane.setVerticalScrollBarPolicy (ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
middlePanel.add (scrollPane);
frame.getContentPane().add(middlePanel);
frame.repaint();
frame.revalidate();
}
Hier mein Bild ist (ohne Auswahl) Wenn ich die Dateien in das Panel laden
Ein Beispiel konkurrieren [hier] untersucht (http://stackoverflow.com/a/7137801/230513). – trashgod
Setzen Sie es einfach auf ausgewählt, wenn Sie die Datei laden? Erkläre besser, was du hast und was du zu bekommen versuchst, wenn du jemanden brauchst, der dir bei der Sprache hilft. – user1803551
Yeah zu wählen, wenn ich die Dateien @ user1803551 laden – Ram