Ciao,
In allegato il link di un semplice test (in delphi 10 ... il piu' datato
che ho ..) dove puoi digitare il testo che desideri nell'edit e, quando
clicchi sul bottone un pannello si adatta alla lunghezza della caption
(che contiene il testo digitato), l'altro pannello (contenuto nel
groupbox) si adatta alla larghezza della caption della label e,
nell'ultimo pannello, e' il testo che hai digitato che si adatta alla
largezza del pannello.
Il tutto funziona bene e si decvono considerare i margini di tutti i
controlli che li hanno (pannelli e gropubox). Non mi ricordo bene dove
l'ho letto ma questi bordi si considerano di 2 pixel; Quindi nel caso
del pannello 2 + 2 = 4 pixel in piu' rispetto alla valore restituito da
TextWidth, nel caso del groupbox sono 4 x gropubox + 4 del pannello = 8.
Spero possa andare bene anche sul tuo sistema .... (con delphi 11 va
bene.... non ricordo da quale versione hanno introdotto la clientwidth).
E' un esempio, il tutto piu' che migliorabile ...
Ciao
Daniele
https://we.tl/t-tXhPc2MTpA