Czy ta postać jest również poprawna ? (dosłownie)
function UstawWlasciwosci(NazwaFormy: TForm):boolean;
begin
NazwaFormy.Width :=10;
Result:=true;
end;
Czy ta postać jest również poprawna ? (dosłownie)
function UstawWlasciwosci(NazwaFormy: TForm):boolean;
begin
NazwaFormy.Width :=10;
Result:=true;
end;
Owszem, zapis ten jest poprawny. Jednak nie ma raczej sensu robić funkcji, która zawsze zwraca to samo :)
Baaa, nie chodzi mi o Result, a raczej o zapis
NazwaFormy.Width :=10;
function UstawWlasciwosci(var NazwaFormy: TForm):boolean;
begin
NazwaFormy.Width :=10;
Result:=true;
end;
Dodale VAR przed parametrem to powoduje ze mozna modyfikowac parametr gdyby bylo const to tak jakbys zdeklarowal stala typy tform a tak jest to zmienna ktora mozna modyfikowac [hurra]
Var wcale nie jest potrzebne. NazwaFormy jest przecież wskaźnikiem, a go nie modyfikujemy, tylko to, na co wskazuje.
Gdyby było z var, to prawdopodobnie nie chciałoby skompilować. Wydaje mi się, że nie można w ogóle dawać obiektów w połączeniu z var :)
Gdyby było z var, to prawdopodobnie nie chciałoby skompilować. Wydaje mi się, że nie można w ogóle dawać obiektów w połączeniu z var :)
TBitmap też obiekt a podawanie parametry z var lub bez działa prawidłowo, tzn var pozwala na modyfikacją parametru (czyli bitmapy), a bez var klonuje ją i uzywa tylko w funkcji/procedurze :)
hmmm zwracanie ciągle tego samego można by wywołać tak:
function UstawWlasciwosci(var NazwaFormy: TForm):boolean;
begin
NazwaFormy.Width :=10;
if getlasterror=0 then Result:=true else result:=false;
end;
zresztą poco robić z tego funkcje?można zrobić lepszą procedure!!
procedure UstawWlasciwosci(var NazwaFormy: TForm; Width,Height:word);
begin
NazwaFormy.Width :=width;
NazwaFormy.Height := height
end;
no potem wywołanie:
[code]UstawWlasciwosci(Form1,100,100);[/code]
TBitmap też obiekt a podawanie parametry z var lub bez działa prawidłowo
No tak, masz rację. Ale kiedyś próbowałem tak przekazać chyba tmenuitem i wywalało błąd, że niby nie można tego dawać jako zmiennej :)
Var wcale nie jest potrzebne. NazwaFormy jest przecież wskaźnikiem, a go nie modyfikujemy, tylko to, na co wskazuje.
Może się powtarzam, ale z postów wnioskuję, że nie rozumiecie mojej odpowiedzi.
Dzięki drajwer. O coś takiego mi chodziło, a raczej o poprawność takiego zapisu. Muszę jednak to sprawdzić. Aktualnie nie mam po ręką Delphi'ego. Czasem są takie sytuacje, które opisałem w Temacie 'TForm' i stąd moje pytanie.
Ok :) dzięki Wszystkim
heh tą funkcję to chyba Ja podyktowałem ;)
heh tą funkcję to chyba Ja podyktowałem ;)
Wydaje mi się, że tu nie jest potrzebna funkcja. Procedura wystarczy. Ją opisał Drajwer. Mimo wszystko dziękuję za wszelkie odpowiedzi - również Twoje, MrSquell [browar] dla Ciebie.
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.