آرایهها در دلفی
دلفی به ما امکان می دهد آرایههایی از هر نوع متغییری را ایجاد کنیم. برای تعریف آرایه به صورت زیر عمل میکنیم: var array[indexType1, ..., indexTypen] of baseType;
d(.i.):= 3 + i; // Equivalent d[i]:= 3 + i;
var A : array [Boolean] of integer; begin A[True] := 50; A[False] := 100; end;
for I := 0 to High(X) do S := S + X[I];
type TDay = (Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday);
const DayNames : array [TDay] of String[9] = ('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday'); var Today : TDay;
begin Today := TDay(DayOfWeek(Date) - 1); ShowMessage('Today is ' + DayNames[Today] + '!'); end;
var MyFlexibleArray: array of Real;
SetLength (MyFlexibleArray, 2; (
MyFlexibleArray := nil;
type TNumbers = packed array[1..100] of Real;
آرایههای چند بعدی دینامیکی: برای تعریف آرایههای چند بعدی دینامیکی، تنها کافی است ...array of را در ساختار خود تکرار کنید. به طور مثال: type TMessageGrid = array of array of string;
var Msgs: TMessageGrid;
SetLength(Msgs, I, J);
var Ints: array of array of Integer;
SetLength(Ints, 10);
SetLength(Ints[2], 5); |
محدودکردن تغییر اندازه فرم در دلفی | |
محدودکردن تغییر اندازه فرم در دلفی
گاهی اوقات نیاز است فرم ما از نظر اندازه پیرو یک الگو باشد و کاربر نتواند خارج از محدوده این فرم را تغییر اندازه دهد، راهی که پیشنهاد می شود، استفاده از Windows Messages، تابع WM_GetMinMaxInfo میباشد. unit MinMax;
interface
uses SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls, Forms, Dialogs;
type TForm1 = class(TForm) private { Private declarations } procedure WMGetMinMaxInfo(var MSG: Tmessage); message WM_GetMinMaxInfo; public { Public declarations } end;
var Form1: TForm1;
implementation
{$R *.DFM}
procedure TForm1.WMGetMinMaxInfo(var MSG: Tmessage); Begin inherited; with PMinMaxInfo(MSG.lparam)^ do begin with ptMinTrackSize do begin X := 300; Y := 150; end; with ptMaxTrackSize do begin X := 350; Y := 250; end; end; end;
end |