Italian community of Lazarus and Free Pascal
Programmazione => Componenti Aggiuntivi => Topic aperto da: Maverich - Aprile 14, 2012, 06:04:23 pm
-
ho inserito su una Band un oggetto di nome Memo4 (nome visualizzato in analizzatore oggetti), che contiene una stringa (es: Prova testo);
a runtime vorrei poter modificare tale variabile, ma come vi accedo ?
ho trovato questa indicazione
"You can use variable in your memo like [MYVAR] then change it in OnGetValue
or find memo object by name
aMemo := frReport.FindObject('MyMemo');
aMemo.Memo.Text := 'mycaption';"
- ho assegnato aMemo : LongInt;
- cerco la variabile Memo4 - aMemo := frReport.FindObject('Memo4');
la aMemo vale -1 (direi che non la trova)
- non posso assegnare : aMemo.Memo.Text := 'stringa' -> aMemo non ha metodi, compilando indica invalid qualifier
come si gestiscono le variabili a runtime ?
-
ho trovato come modificare un oggetto Memo
var aText: TfrObject;
begin
frReport1.LoadFromFile('E:\Lazarus\Test3\Report1.lrf');
aText := frReport1.FindObject('Memo4');
aText.Memo.Text := 'nuovo Titolo su Memo4';
end;
se invece ho un Oggetto Memo composto da piu' righe
es: Memo6
Titolo
del Report
posso accedere all'elemento n dell'oggetto
aText := frReport1.FindObject('Memo6');
aText.Memo.Strings[1] := 'modificato';
in stampa ottengo
Titolo
modificato
ci sono arrivato leggendo il manuale FastReport (quello FreeReport risulta illeggibile), provando, ci sono comunque differenze.