I Excel er bredden af en celle faktisk bredden af en kolonne, fordi Excel antager, at bredden af cellerne i denne kolonne skal være den samme. For at sætte bredden af en celle skal vi starte med bredden af kolonnen, HSSFSheet har en metode kaldet SetColumnWidth, der er to parametre: den ene er indekset for kolonnen (startende fra 0), og den anden er bredden. Antag nu, at du vil sætte bredden af kolonne B, kan du bruge følgende kode:
Her finder du et interessant fænomen: Den anden parameter i SetColumnWidth ganges med 256, hvad foregår der? Faktisk er enheden af denne parameter 1/256 tegnbredde, det vil sige, bredden af kolonne B sættes til 100 tegn. Det, vi lige sagde, er, hvordan man sætter, altså hvordan man læser bredden af en kolonne? Ved direkte brug af GetColumnWidth-metoden har denne metode kun én parameter, nemlig kolonnens indeksnummer. Det ser sådan ud:
Efter at have talt om bredde, lad os tale om højde, i Excel kræves højden af hver linje også, så at sætte cellens højde er faktisk at sætte rækkens højde, så den relevante attribut bør også være på HSSFRow, det er HSSFRow.Height and HeightInPoints, forskellen mellem disse to attributter er, at enheden af HeightInPoints er point, og enheden for Height er 1/20 af et punkt, Så værdien af Height er altid 20 gange HeightInPoints. For at indstille højden på den første linje kan du bruge følgende kode:
eller
Hvis du vil have rækkehøjden på en bestemt linje, kan du direkte tage returværdien af HSSFRow.Height-egenskaben.
Hvis du måske finder det besværligt at sætte rækkehøjden én række ad gangen eller kolonnebredden for en kolonne, kan du overveje at bruge egenskaberne HSSFSheet.DefaultColumnWidth, HSSFSheet.DefaultRowHeight og HSSFSheet.DefaultRowHeightInPoints. Når disse egenskaber er sat, og en række eller kolonne ikke har en bredde sat, bruges standardbredden eller -højden. Koden er som følger:
|