Tu codigo no me funcionó porque no hacía lo que yo quería pero cogiendolo como ejemplo he dejado el mio así:
Código PHP:
void __fastcall TForm1::SetScrollWidth(TListBox *lb)
{
int MaxWidth = -1;
int len;
if(lb->Items->Count > 0){
for(int i = 0; i < lb->Items->Count; i++)
{
len = lb->Canvas->TextWidth(lb->Items->Strings[i]);
if(MaxWidth < len)
MaxWidth = len;
if(MaxWidth != -1){
lb->ScrollWidth = MaxWidth + lb->Canvas->TextWidth(MaxWidth) + GetSystemMetrics(SM_CXVSCROLL);
}
}
}else{
lb->ScrollWidth = 0;
}
}
Parece que hace justo lo que hago
. ¿Hago algo mal?