Avatar billede Kim Neesgaard Seniormester
03. marts 2004 - 21:13 Der er 16 kommentarer og
1 løsning

Kolonnebredde i et listview

Hvordan sætter man en individuel kolonnebredde i et listview?
Avatar billede helmet Nybegynder
03. marts 2004 - 21:26 #1
I design mode, kan du gøre det ved og højre klikke på listviewet og vælge properties.

Runtime, kan du gøde det med
listview.ColumnHeaders.Item(i).Width= bredde.
Avatar billede Kim Neesgaard Seniormester
03. marts 2004 - 21:37 #2
Med fx.

listview.ColumnHeaders.Item(1).Width= 1000

får jeg beskeden Index out of bounds?

Er Width i design mode ikke den totale bredde af listview, dvs. af alle kolonnerne i listviewed?
Avatar billede helmet Nybegynder
03. marts 2004 - 21:40 #3
Jo, listview.width er den totale bredde.
Men du har måske ikke tilføjet nogle kolonner til listviewet endnu??
Avatar billede Kim Neesgaard Seniormester
03. marts 2004 - 21:45 #4
Jeg har i andet indlæg fået anbefalet

With ctl
  .ListItems.Clear
  .ColumnHeaders.Add , , "Beskrivelse"
  .ColumnHeaders.Add , , "Kodetype"
  .View = lvwReport
End With

og herefter

Set itm = ctl.ListItems.Add(, , rs(Felt1))
itm.SubItems(1) = rs(Felt2)

og det virker fint, men de to kolonner fylder ikke listviewet ud, så derfor vil jeg gerne kunne øge kolonnebredden af den første kolonne, da denne har mest information.
Avatar billede helmet Nybegynder
03. marts 2004 - 21:48 #5
Hvis du kører listview.ColumnHeaders.Item(1).Width= 1000
efter det øverste del i dit eksempel, så kommer den ikke og siger index out of bounds, hvor havde du placeret linie, da du afprøvede det?
Avatar billede Kim Neesgaard Seniormester
03. marts 2004 - 21:56 #6
Du har ganske ret! Jeg placerede den i Form_Load, men hvis den sættes EFTER opfylning af listviewet, virker det perfekt!! Mange tak!
Avatar billede Kim Neesgaard Seniormester
03. marts 2004 - 21:57 #7
Vil du afgive det som 'svar'?
Avatar billede Marting Forsker
03. marts 2004 - 21:59 #8
kan du skrive direkte i en listview?? altså i det hvide felt!!
Avatar billede helmet Nybegynder
03. marts 2004 - 21:59 #9
Jep, du kan jo også vælge og indsætte kolonner design time, der kan du også definere hvor bredde kolonnerne skal være.
Avatar billede helmet Nybegynder
03. marts 2004 - 22:02 #10
Nej, kun i det første felt.
Avatar billede Kim Neesgaard Seniormester
03. marts 2004 - 22:05 #11
Hvordan gør man det ved design time med fx. de to nævnte kolonner?
Avatar billede helmet Nybegynder
03. marts 2004 - 22:07 #12
Højre klik på listviewet og vælg properties, så er der en fane der hedder columsheaders, der kan du indsætte de kolonner du har lyst til.
Avatar billede Marting Forsker
03. marts 2004 - 22:09 #13
kunne men ikke det helmet? i en run time!
Avatar billede helmet Nybegynder
03. marts 2004 - 22:11 #14
marting-> Nej, kun i den første kolonne, sådan er det bare. Desværre
Avatar billede Kim Neesgaard Seniormester
03. marts 2004 - 22:12 #15
Men kan man også angive bredden her eller skal det være i runtime?
Avatar billede helmet Nybegynder
03. marts 2004 - 22:16 #16
Ja, du kan også gøre det der, men gør du det så også runtime er det naturligvis den, der kommer til og være den gældende bredde.
Avatar billede Kim Neesgaard Seniormester
03. marts 2004 - 22:19 #17
Ja - nu fandt jeg den under Customfanen.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester