MessageBox - problem z liczbą argumentów

MessageBox - problem z liczbą argumentów
M2
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 7
0

Witam. Chciabym się dowiedziec jak napisac w okienku dialogowym Applicaion.MessageBox tekst ze zmienną P, ktora jest typu integer?
Robię tak:

Kopiuj
Application.MessageBox('Posiadasz:' + IntToStr(P) + 'Informacja', 0);

ale wyskakuje blad 'wrong number of parameters...

abrakadaber
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 6610
1

i pewnie nic ci ten komunikat nie mówi...

M2
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 7
0

Jakbym wiedzial jak sobie z tym poradzic to bym tu nie pisal.

pelsta
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 819
0
Kopiuj
function MessageBox(const Text, Caption: PChar; Flags: Longint = MB_OK): Integer;
flowCRANE
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Tuchów
  • Postów: 12269
2

Po pierwsze - masz podane zbyt mało argumentów;
Po drugie - nie możesz w ten sposób budować łańucha wewnątrz funkcji... Musisz rzutować na PChar:

Kopiuj
Application.MessageBox(PChar('Posiadasz:' + IntToStr(P) + 'Informacja'), 'Tytuł okna', 0);

Nie musisz rzutować, jeśli argument jest typu String - np. w procedurze ShowMessage.

M2
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 7
0

Dziekuje, za odpowiedź, teraz działa. Będę wiedzial na przyszłość.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.