POI und Radiobuttons

ehc

Mitglied
Hallo,

wieder eine Frage.. ich habe meine Oberfläche mit einer Frage und 2 Radiobuttons und ein OK-Button. (z.B. Geht es dir gut? O Ja O Nein /und der Button OK/)

Ich möchte das die Antwort in meine Excel-Datei angezeigt wird. (Also das dann das schon angefertigete Optionsfeld ausgewählt wird.) Aber wie mache ich das? Wie kann ich denn auf das Optionsfeld zugreifen?

Info: Wie eine Datei geöffnet wird ist mir klar, auch wie ich normale Werte aus TextBoxen bekomme und in Excel einfüge nur wie es mit RadioButtons und Auswahllisten geht weiß ich nicht :noe:

Vielen Dank jetzt schon mal,

MfG ehc
 

c_sidi90

Top Contributor
Ich weis nichtmal wie man in Excel solche Optionsfelder erstellt. Ich bin mir aber ziemlich sicher, dass sie wie alle Cellcomponents einen boolischen Wert bekommen um den Haken zu setzen oder eben nicht. Daraus folgt, dass du also diesen Ausdruck (evtl. WAHR) in die Zelle schreiben musst, in der sich das Optionsfeld befindet. Das kannst du ja schon wie du beschrieben hast.

Sag bescheid wenn es funktioniert.
 

ehc

Mitglied
Also ja das dachte ich mir auch aber wie/ bzw woher soll er denn wissen das genau in DIESER Excel-Datei die Optionsfelder sind?
 

c_sidi90

Top Contributor
Du weist doch in welche Datei du nach dem click auf den Button den Wert schreiben willst oder nicht? Dann weist du auch in welcher Zelle das Optionsfeld ist. Also kannst du auch den Wert in die Zelle via POI eintrage, als normalen String.

Edit: vlt reicht es auch einfach "true" oder "wahr" einzusetzen
 

ehc

Mitglied
Ich möchte ihn ja nicht als String eintragen ich möchte ja später die Datei ausdrucken und dann sieht das besser aus!

Ich habe da das: Kontrollkästchen 1 und Kontrollkästchen 2 so und jetzt wollte ich das das erste "WAHR" ist...so und jetzt... dachte ich mir... wenn in meiner GUI-Klasse das rdbYes "WAHR" ist dachte ich mir es zu übergeben und dann zu sagen Kontrollkästchen 1 ist dann WAHR wenn rdbYes WAHR ist.. aber er sagt was ja klar ist... das er das nicht kennt!
 

c_sidi90

Top Contributor
Hab jetzt nochmal nachgeschaut, viel zu diesem Thema findet man da leider garnicht. 99% der Posts im Internet besagen, dass POI keine Möglichkeit bietet um auf Kontrollfelder zu zugreifen. Es ist jedoch häufiger der Begriff EscherRecord gefallen. Eventuell hilft dir das bei der weiteren Suche.
 

ehc

Mitglied
Hm das ist nicht so einfach... das ist ein sehr großen Projekt und das hat jetzt schon sehr viele Code-Zeilen...

Und ich weiß ja nicht wie ich anfangen soll...

Java:
private void DruckenMouseClicked(MouseEvent event) {
		Verwendung	= txtVerwendung.getText();
		Raum		= txtRaum.getText();
		Inventar	             = txtInventar.getText();
		Lieferant	             = txtLieferant.getText();
		Verant		= txtVerant.getText();
		RaumVerant	= txtRaumVerant.getText();
		AppVerant	= txtAppVerant.getText();
		Stellver	             = txtStellver.getText();
		RaumStellver         = txtRaumStellver.getText();
		AppStellver           = txtAppStellver.getText();
		Drucken dr = new Drucken();
		dr.setVerwendung(Verwendung);
		dr.setRaum(Raum);
		dr.setInventar(Inventar);
		dr.setLieferant(Lieferant);
		dr.setVerant(Verant);
		dr.setRaumVerant(RaumVerant);
		dr.setAppVerant(AppVerant);
		dr.setStellver(Stellver);
		dr.setRaumStellver(RaumStellver);
		dr.setAppStellver(AppStellver);
		try {
			dr.drucken();
		} catch (IOException e) {
			e.printStackTrace();
			Object[] options = { "OK" , "CANCEL"};
			JOptionPane.showOptionDialog(null,"Fehler","Achtung",JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE,null,options,options[0]);
		}
	}

So das ist die GUI-Klasse... also der Button!

und hier werden die Werte eingetragen..

Java:
public class Drucken {
	
	private String Verwendung;
	private String Raum;
	private String Inventar;
	private String Lieferant;
	private String Verant;
	private String RaumVerant;
	private String AppVerant;
	private String Stellver;
	private String RaumStellver;
	private String AppStellver;
	
	public void drucken() throws IOException{
		InputStream inp = new FileInputStream("Test.xls");
		
		HSSFWorkbook wb = new HSSFWorkbook(inp);
		Sheet sheet = wb.getSheetAt(0);		
		Row verwendung = sheet.getRow(10);
	    Cell cell = verwendung.getCell(3);
        if (cell == null)
            cell = verwendung.createCell(3);
        cell.setCellType(Cell.CELL_TYPE_STRING);
        cell.setCellValue(Verwendung);
        
        Row raum = sheet.getRow(11);
	    Cell cell1 = raum.getCell(3);
        if (cell1 == null)
            cell1 = raum.createCell(3);
        cell1.setCellType(Cell.CELL_TYPE_STRING);
        cell1.setCellValue(Raum);
        
        Row inventar = sheet.getRow(12);
	    Cell cell2 = inventar.getCell(3);
        if (cell2 == null)
        	cell2 = inventar.createCell(3);
        cell2.setCellType(Cell.CELL_TYPE_STRING);
        cell2.setCellValue(Inventar);
        
        Row lieferant = sheet.getRow(13);
	    Cell cell3 = lieferant.getCell(3);
        if (cell3 == null)
        	cell3 = lieferant.createCell(3);
        cell3.setCellType(Cell.CELL_TYPE_STRING);
        cell3.setCellValue(Lieferant);
        
        Row verant = sheet.getRow(15);
	    Cell cell4 = verant.getCell(3);
        if (cell4 == null)
        	cell4 = verant.createCell(3);
        cell4.setCellType(Cell.CELL_TYPE_STRING);
        cell4.setCellValue(Verant);
        
        Row verantraum = sheet.getRow(15);
	    Cell cell5 = verantraum.getCell(4);
        if (cell5 == null)
        	cell5 = verantraum.createCell(4);
        cell5.setCellType(Cell.CELL_TYPE_STRING);
        cell5.setCellValue(RaumVerant);
        
        Row verantapp = sheet.getRow(15);
	    Cell cell6 = verantapp.getCell(5);
        if (cell6 == null)
        	cell6 = verantapp.createCell(5);
        cell6.setCellType(Cell.CELL_TYPE_STRING);
        cell6.setCellValue(AppVerant);
        
        Row stellver = sheet.getRow(17);
	    Cell cell7 = stellver.getCell(3);
        if (cell7 == null)
        	cell7 = stellver.createCell(3);
        cell7.setCellType(Cell.CELL_TYPE_STRING);
        cell7.setCellValue(Stellver);
        
        Row stellverraum = sheet.getRow(17);
	    Cell cell8 = stellverraum.getCell(4);
        if (cell8 == null)
        	cell8 = stellverraum.createCell(4);
        cell8.setCellType(Cell.CELL_TYPE_STRING);
        cell8.setCellValue(RaumStellver);
        
        Row stellverapp = sheet.getRow(17);
	    Cell cell9 = stellverapp.getCell(5);
        if (cell9 == null)
        	cell9 = stellverapp.createCell(5);
        cell9.setCellType(Cell.CELL_TYPE_STRING);
        cell9.setCellValue(AppStellver);
        
        
        
        

        FileOutputStream fileOut = new FileOutputStream("Test1.xls");
	    wb.write(fileOut);
	    fileOut.close();
	}


So und wie bringe ich jetzt das Kontrollkästchen in meiner Exceldatei dazu das zu machen was ich will ;)
 

Ähnliche Java Themen


Oben