-
تغییر مرورگر پیش فرض ویندوز
سهشنبه 19 دیماه سال 1396 09:09
تغییر مرورگر پیش فرض ویندوز با اصلاح مسیر زیر در رجیستری HKEY_CLASSES_ROOT\http\shell\open\command HKEY_CLASSES_ROOT\https\shell\open\command SendMessage(HWND_BROADCAST, WM_SETTINGCHANGE, 0, Integer(PChar('Environment')));
-
نگه داری عکس با فرمت base64 در دلفی
یکشنبه 10 دیماه سال 1396 11:31
تبدیل عکس به base 64 و ذخیره در دیتابیس به صورت رشته ای و تبدیل رشته کد شده به عکس uses Soap.EncdDecd procedure DecodeToFile(const base64: AnsiString; const FileName: string); var stream: TFileStream; bytes: TBytes; begin bytes := DecodeBase64(base64); stream := TFileStream.Create(FileName, fmCreate); try if...
-
نرم افزار فروشگاهی
سهشنبه 9 آبانماه سال 1396 12:33
نرم افزار فروشگاهی بایت از اصلی ترین مزیت های این برنامه می توان به موارد زیر اشاره کرد: :heavy_check_mark: تعریف کاربرهای مختلف با سطوح دسترسی قابل تعریف :heavy_check_mark: گزارش گیری های متنوع و کارا بر روی حساب ها،کالا ها، فاکتور ها ، اشخاص و.... :heavy_check_mark: ثبت پیش فاکتور ها و صدور فاکتور از روی پیش فاکتور...
-
تبدیل یک کامپوننت به کامپوننت دیگر در دلفی
پنجشنبه 27 مهرماه سال 1396 14:19
برای تبدیل ، تغییر نام ، ... روی کامپوننت ها به راحتی میتوان از برنامه جانبی که روی دلفی نصب میشود با نام GExperts استفاده کرد من تا اخرین نسخه فعلی دلفی xe10.2 تست گرفتم و مشکلی نداشت
-
مرتب سازی dbgrid
پنجشنبه 20 مهرماه سال 1396 16:25
مرتب سازی dbgrid دلفی procedure TformResult.gridResultTitleClick(Column: TColumn); begin // User can sort the grid by clicking on any column's title if DM.ADOSearch.Sort = Column.FieldName + ' ASC' then DM.ADOSearch.Sort := Column.FieldName + ' DESC' else DM.ADOSearch.Sort := Column.FieldName + ' ASC'; end;
-
خواندن ورژن از تنظیمات در دلفی
یکشنبه 12 شهریورماه سال 1396 10:46
function GetFileVersion(exeName : string): string; const c_StringInfo = 'StringFileInfo\040904E4\FileVersion'; var n, Len : cardinal; Buf, Value : PChar; begin Result := ''; n := GetFileVersionInfoSize(PChar(exeName),n); if n > 0 then begin Buf := AllocMem(n); try GetFileVersionInfo(PChar(exeName),0,n,Buf); if...
-
جایگزینی حرف 'ی' و 'ک' عربی با فارسی
دوشنبه 6 شهریورماه سال 1396 11:58
کد زیر تمامی جداول دیتابیس را میگردد و فیلدهای متنی را انتخاب میکند و این دو کاراکتر را جایگزین میکند DECLARE @Table NVARCHAR(800),@Column NVARCHAR(800) DECLARE Table_Cursor CURSOR FOR --پیدا کردن تمام فیلدهای متنی تمام جداول دیتابیس جاری SELECT T.name, /* Table */ C.name /* Column */ FROM sysobjects T,syscolumns C...
-
HorizontalAlignment property of the Range class error
چهارشنبه 25 مردادماه سال 1396 09:40
برای تنظیم HorizontalAlignment و VerticalAlignment در تنظیمات خروجی اکسل دلفی اگر با xlleft , ... مشکل داشت میتوان از کدهای زیر استفاده کرد For VerticalAlignment : Top : - 4160 Center : - 4108 Bottom : - 4107 And HorizontalAlignment : Left : - 4131 Center : - 4108 Right : - 4152 var WrkSheet : oleVariant; begin...
-
HorizontalAlignment property of the Range class error
چهارشنبه 25 مردادماه سال 1396 09:36
For VerticalAlignment : Top : - 4160 Center : - 4108 Bottom : - 4107 And HorizontalAlignment : Left : - 4131 Center : - 4108 Right : - 4152
-
چیدن تاریخ در یک بازه زمانی در sql
سهشنبه 2 شهریورماه سال 1395 10:45
من نیاز داشتم به اینکه یک ماه تاریخ در بالای گریدم نمایش بدم و سمت راستم هم یک سری اطلاعات دیگه . کد زیر تاریخ از اول ماه تا تاریخ جاری نمایش میدهد شما میتونید هر طور خواستین تغییرش بدین . DECLARE @startDate DATEtime set @startDate= CAST(MONTH(GETDATE()) AS VARCHAR) + '/' + '01/' + + CAST(YEAR(GETDATE()) AS VARCHAR)...
-
مرتب سازی memtable در دلفی روی گرید
چهارشنبه 27 مردادماه سال 1395 14:05
مرتب سازی memtable در دلفی روی گرید به صورت زیر عمل میکنیم procedure TFmTransferInfo.DBGridEh1TitleClick(Column: TColumnEh); begin if not(DBGridEh1.DataSource.DataSet.Active) then Exit; if Column.Field.Calculated then Exit; case Column.Title.SortMarker of smNoneEh: begin Column.Title.SortMarker := smDownEh;...
-
تفاوت بین دو زمان در دلفی
شنبه 2 مردادماه سال 1395 12:28
برای محاسبه تفاوت بین دو زمان در دلفی یونیت DateUtils ابتدا اضافه شود سپس از کد زیر استفاد ه شود SecondsBetween ( Now , IncSecond ( Now , 10 )) MinutesBetween(Now, IncMinute(Now,110))
-
غیر فعال کردن دکمه بستن فرم
دوشنبه 24 خردادماه سال 1395 12:41
برای غیر فعال کردن دکمه بستن فرم و فعال کردن ان از کد زیر میشود استفاده کرد : EnableMenuItem( GetSystemMenu( handle, False ),SC_CLOSE, MF_BYCOMMAND or MF_GRAYED ); Enable: EnableMenuItem( GetSystemMenu( handle, False ), SC_CLOSE, MF_BYCOMMAND or MF_ENABLED ); و اگر نیاز به خاموش بودن دکمه بستن نیست از کد زیر استفاده...
-
جدا کردن رشته با کاما در sql
یکشنبه 23 خردادماه سال 1395 09:43
ورودی یک رشته و کاراکتر جداکننده است و به صورت تفکیک شده در یک جدول به ما برگشت داده میشود . CREATE FUNCTION SplitString ( @Input NVARCHAR ( MAX ), @Character CHAR ( 1 ) ) RETURNS @Output TABLE ( Item NVARCHAR ( 1000 ) ) AS BEGIN DECLARE @StartIndex INT , @EndIndex INT SET @StartIndex = 1 IF SUBSTRING ( @Input , LEN (...
-
کد اجرای برنامه ای دیگر در دلفی
جمعه 31 اردیبهشتماه سال 1395 17:14
اگر بخواهیم در برنامه نوشته شده با دلفی برنامه دیگری را فراخوانی کنیم از کد زیر استفاده میکنیم var Address:string; begin Address:=ExtractFilePath(Application.ExeName)+'p.exe'; if FileExists(Address) then ShellExecute(Handle,'open',PChar(Address),nil,nil,SW_SHOWNORMAL) else showmessage('فایل مربوطه پیدا نشد.'); اگر...
-
حذف رکورد از stringgrid دلفی
دوشنبه 13 اردیبهشتماه سال 1395 10:08
برای حذف رکورد جاری در stringgrid دلفی ، پروسیژر زیر را تعریف و در برنامه استفاد نمایید procedure DeleteRow(Grid: TStringGrid); var i: Integer; begin for i := grid.Row to Grid.RowCount - 2 do Grid.Rows[i].Assign(Grid.Rows[i + 1]); Grid.RowCount := Grid.RowCount - 1; end; برای رکورد خاص به پروسیژر یک ورودی دیگر که...
-
استفاده از ترد در دلفی
چهارشنبه 8 اردیبهشتماه سال 1395 10:30
ابتدا باید ترد تعریف شود به صورت زیر Type SefareshThread = Class(TThread) // procedure openquery(); تمامی توابع و پروسیژرها را در اینجا تعریف کنید protected procedure Execute; override; end; یک تایمر روی صفحه میتوان گذاشت برای فراخوانی ترد و کدهای زیر برای انجام عملیات مورد نظر procedure SefareshThread.Execute; begin...
-
نمایش تایم کارهای انجام شده در دلفی
سهشنبه 7 اردیبهشتماه سال 1395 14:48
کامپوننت acDateTimeCalc در تب app controls ++ قرار دارد روی فرم بگذارید و کد زیر را برای ان بنویسید procedure TForm1.Button1Click(Sender: TObject ); begin acDateTimeCalc1.BeginTime:=Time ; ADOQuery2.Close ; ADOQuery2.Open ; ADOQuery1.Close ; ADOQuery1.Open ; acDateTimeCalc1.EndTime:=Time ; Caption:=Caption+'...
-
ازادسازی حافظه از فرم ها در دلفی
شنبه 4 اردیبهشتماه سال 1395 14:19
ازادسازی حافظه از فرمهای ایجاد شده var str_:tstringlist; i:integer; begin str_:=tstringlist.Create; str_.Clear; for i:=0 to screen .FormCount-1 do begin if (Screen.Forms[i].Name ='fmain') then Continue; Str_.add(screen .forms[i].Name) ; end; for i:=0 to str_.Count-1 do...
-
ارسال دستور به سرور و دریافت پاسخ با tcpclient
دوشنبه 16 فروردینماه سال 1395 11:43
برای کار با tcpclient دستورات زیر را وارد میکنیم procedure TForm1.btnSendClick(Sender: TObject); var I: Integer; begin TcpClient1.RemoteHost := edtRemoteHost.Text; TcpClient1.RemotePort := edtRemotePort.Text; if not TcpClient1.Connected then TcpClient1.Connect ; i:= TcpClient1.Sendln(Trim(statement.Text));...
-
ارسال دستور به سرور و دریافت پاسخ با indytcpclient
دوشنبه 16 فروردینماه سال 1395 11:37
برای ارسال و دریافت اطلاعات از طریق indytcpclient به صورت زیر عمل میکنیم . port , host را تنظیم میکنیم و من دستور مورد نظر را در ادیت وارد کردم و ارسال میکنم و پاسخ را با دستور readchar دریافت کردم var ch:char; str:string; begin IdTCPClient1.host:='192.168.1.25'; IdTCPClient1.port:=8080; IdTCPClient1.Connect(300);...
-
نمایش چندین رکورد جدول sql server در یک عبارت
شنبه 10 بهمنماه سال 1394 11:05
به عنوان مثال SubjectID StudentName ---------- ------------- 1 Mary 1 John 1 Sam 2 Alaina 2 Edward که در این مثال نمایش میخواهیم به صورت زیر باشد : SubjectID StudentName ---------- ------------- 1 Mary , John , Sam 2 Alaina , Edward از کدهای زیر می توان استفاده کرد DECLARE @ Names VARCHAR ( 8000 ) SELECT @ Names =...
-
هندل کردن خطاهای رخ داده شده در برنامه دلفی
پنجشنبه 17 دیماه سال 1394 12:57
هندل کردن خطاهای رخ داده شده در برنامه دلفی در زمان try except { In addition to displaying the exception message, which happens by default, the following code shuts down the application when an exception is not caught and handled. AppException should be declared a method of TForm1. } procedure TForm1 . FormCreate (...
-
به دست آوردن نام فرم ها در دلفی
چهارشنبه 16 دیماه سال 1394 21:25
برای به دست آوردن نام فرم ها در دلفی از کد زیر می توان استفاده کرد procedure TForm1.Button3Click(Sender: TObject); var i:integer; begin for I:= 0 to Screen.CustomFormCount - 1 do Memo1.Lines.Add(Screen.Forms[I].Caption); end; و برای نمایش ابجکتهای هر فرم از کد زیر : var i:integer; begin with Application do for i:=0 to...
-
تغییر فونت و سایز فونت در کل پروژه دلفی در زمان اجرا
پنجشنبه 28 آبانماه سال 1394 11:50
ابتدا System.TypInfo را uses تعریف میکنیم به خاطر استفاده از GetObjectProp حالا تابع زیر را تعریف میکنیم procedure SetFontProperties ( Control : TControl ; Name : TFontName ; Size : Integer ; Styles : TFontStyles ); // Set font properties var Index : Integer ; Font : TFont ; AnObject : TObject ; ChildControl :...
-
ارسال پارامتر برای اجرای exe در دلفی
یکشنبه 24 آبانماه سال 1394 14:12
برای ارسال پارامتر دو روش زیر وجود دارد WinExec( 'C:\prog.exe param1 param2' , SW_SHOW); یا uses ShellApi; var parameter: String ; parameter:= 'param1 param2' ; ShellExecute( 0 , 'open' , 'C:\prog.exe' , PChar (parameter), nil , SW_SHOW); برای خواندن پارامترها از دستور زیر میتوان استفاده کرد var i: integer ; begin for...
-
نمایش فایل اکسل با کد دلفی
چهارشنبه 20 آبانماه سال 1394 13:11
uses ComObj ; .. procdure startExcel ; var oE : Variant ; begin try oE := GetActiveOleObject ( 'Excel.Application' ); except oE := CreateOleObject ( 'Excel.Application' ); end ; oE . Workbooks . Open ( filename , false , false ); oE . Visible := True ; end ;
-
دستور Exec sp_Execute با پارامتر خروجی در sql server
دوشنبه 11 آبانماه سال 1394 11:09
Declare @TableName Varchar(100) Set @TableName = 'TableName' Declare @Count int Declare @SqlString Nvarchar(1000) Set @SqlString = 'Select @OutCount = Count(*) From ' +@TableName Exec sp_Executesql @SqlString, N'@OutCount Int Output', @OutCount = @Count Output
-
استفاده از define در دلفی
پنجشنبه 23 مهرماه سال 1394 12:26
کاربرد این دستور در زمان کامپایل است که مشخص میکند کدام بخش از کد باید کامپایل شود تا خروجی بسازد یک فایل با پسوند inc ایجاد کنید و در هر خط یک define مورد نیاز بگذارید مثلا {DIFINE Symbol$} و به صورت زیر در دلفی استفاده کنید interface {$I Predefines.inc} uses ... // Check you defines {$IFDEF Symbol} ... {$ENDIF} or...
-
دستور update با وجود sum
دوشنبه 4 خردادماه سال 1394 10:41
UPDATE table1 SET field1 = ( SELECT SUM ( field2 ) FROM table2 AS t2 WHERE t2 . field3 = t1 . field3 ) FROM table1 AS t1 or UPDATE table1 SET field1 = ( SELECT SUM ( t2 . field2 ) FROM TABLE2 t2 WHERE t2 . field3 = field2 )