Chciałbym aby w messageboxie tekst wyświetlał się zawsze w 2 liniach. Wiem, że okienko to niby ma automatyczne zawijanie wierszy ale niestety nie zawsze ono działa.(Na W7 zawija po 70 znakach, na Xp po 88 nie zawija). Czy jest jakieś polecenie, znak specjalny by wymusić zawijanie wiersza ?
postaw znak końca linii.
http://pl.wikipedia.org/wiki/End-of-line
teskt1 + #13#10 + tekst2
lub
'tekst1'#13#10'tekst2'
Dokładnie, można dać tylko #13#10, ale pod Windows 7 lepiej tak nie zwijac, bo o ile pod XP pamiętam że w MessageBoxach spokojnie dawałem "szersze" wiersze, to już pod Windows 7 tekst mi się brzydko prezentował bo go porozcinało, dlatego pod Windows 7 jeśli nie muszę to nie stosuje krótkich wierszy tylko piszę dodając w liniach w kodzie kolejne 'tekst
+ tekst linijkę niżej
itp. Głównie dłuższe teksty stosuje w MessageBoxach z About bo mi się pod WinAPI nie chce babrać z robieniem wypasionego osobnego dialogu dla About i w nowych linjkach podaję tylko osobno na przykład informację skąd ściągnąc grę tak jak w pisanych na prośbę trainerach (na przykład do Settlersów PC działających pod DosBoxem).
W C# można coś takiego osiągnąć za pomocą łańcucha dosłownego, np.
System.Windows.Forms.MessageBox.Show(@"To będzie
dwulinijkowy tekst");
olesio napisał(a)
Dokładnie, można dać tylko #13#10, ale pod Windows 7 lepiej tak nie zwijac
Nie rozumiem dlaczego dodajecie CR - wystarczą same LF;
Przykład użycia:
MessageBox(Self.Handle, 'To pierwsza linia.'#10#10'To druga.', 'Kilka linii', MB_OK);
co spowoduje wyświetlenie poniższego okienka:
Zawsze w ten sposób łączyłem łańcuchy w MessageBox i nigdy mnie ten sposób nie zawiódł; Zawijanie wierszy to inna sprawa, ponieważ trzeba znać zachowanie okienka na dłuższe linie tekstu; Dlatego zawsze polecam napisanie sobie własnego okienka dialogowego i oprogramować je typowo pod własne wymagania;
furious programming napisał(a):
MessageBox(Self.Handle, PChar('To pierwsza linia.'#10#10'To druga.'), 'Kilka linii', MB_OK);
To druga. - to kłamstwo bo to jest trzecia.
_13th_Dragon napisał(a)
To druga. - to kłamstwo bo to jest trzecia.
No tak, druga którą widać;
Usunąłem z przykłądu rzutowanie żeby nie zawijało linii kodu;