Tekst op een button wrappen kan alleen in code (voor zover ik weet):
Button1.Caption:='regel 1'+LineEnding+'regel 2';
Wat multi-user toepassingen betreft, kom je al snel uit bij ODBC databases, of server georienteerde databases (MySQL, Postgress, etc).
In principe moet er een database engine draaien waarmee jouw programma communiceert.
Het installeren van b.v. MySQL is echter wel wat veel gevraagd als je een programma wilt verspreiden onder gebruikers.
Er is een zogenaamde "embedded" versie van MySQL maar die heb ik nog nooit aan de gang gekregen.
Als ik me niet vergis is er ook een compacte versie van MSQL (SQL server Microsoft) die met ODBC benaderd kan worden - maar ook daar heb ik weinig ervaringen mee.
FireBird is een andere database die multi-user aan kan, maar mijn ervaringen daarmee zijn ook heel erg beperkt. Het is wel een gerespecteerde engine.
Je moet in al die gevallen al snel met andere database componenten aan de slag. Bijvoorbeeld MyDAC (commercieel maar wel erg goed) of ZEOS (gratis en functioneerd ook bets goed - tenzij je met heel veel users aan de slag gaat) - of een van de specifieke componenten die al bij Lazarus zitten. De DBEdit's en zo hoeven niet aangepast te worden - alleen maar de "verbinding" zeg maar.
Ik heb zelf SQLite nog niet als multi-user database gebruikt, maar het lijkt wel te kunnen (zie SQLite Fax). Bij het submitten van data moet je wel even kijken of de database al gelocked is en evt een paar seconden wachten tot het weer vrij is. Ik weet even niet zo uit m'n hoofd of de SQLite componenten daar voorzieningen voor hebben.