پرسش و پاسخ در برنامه نویسی دلفی

دختر شرقی

کاربر حرفه ای
کاربر ممتاز
با سلام
دوستان عزیز در این تاپیک میتونید سوالات متفرقه خودتون رو در زبان دلفی مطرح بفرمایید ...
 
آخرین ویرایش:

s_aa

کاربر فعال تالار اسلام و قرآن ,
کاربر ممتاز
چه جوری در دلفی می توان فرمی را به فرم دیگر اضافه کرد؟
 
آخرین ویرایش توسط مدیر:

ma_zaree33

عضو جدید
در کد فرمی که میخواهی فرم دیگری به آن لضافه کنی بعد از قسمت implementation
دستور زیر را اضافه کن .مثلا
فرم یک را اضافه کن
uses Unit1​
 

sasa_a

عضو جدید
پرسش و پاسخ در برنامه نویسی به زبان دلفی

پرسش و پاسخ در برنامه نویسی به زبان دلفی

با سلام:من در برنامه ای که با دلفی نوشتم دیبی گریدی برای ارتباط با جدولی که در اسکیوال دارم قرار دادم حال می خوام وقتی کاربر اطلاعات جدیدی رو برای ذخیره در این جدول قرار میده (در رکورد این جدول)اطلاعات تکراری در این جدول ذخیره نشود(کدی رو که امکان تشخیص کد تکراری رو داشته باشه تا کاربر نتونه اطلاعات تکراری وارد کنه)(مثل کد دانشجویی که نباید تکراری باشه):confused:
 

شیبا

عضو جدید
من منظورتو متوجه نمی شم:warn: خوب خود sql رکورد تکراری ثبت نمی کنه لزومی نداره تو در برنامه براش تعریف کنی که این کار را انجام بده.
 

DOGHOLOHA

عضو جدید
پاسخ مشکل در دلفی

پاسخ مشکل در دلفی

سلام دوست خوب .

نیازی به کد خاصی ندارید ، شما فیلد شماره دانشجوئی رو کلید قرار بدین .
 

omidsistani

عضو جدید
سلام دوسته عزیز
همونطوری که دوستمون گفتن اگه شما فیلد شماره دانشجویی رو کلید قرار بدین ، وقتی که برنامه در حال اجراست اگه تکرار وارد بشه خود برنامه بهتون اخطار میده
 

fateme ba

عضو جدید
سلام
من دارم برنامه ای به زبان دلفی مینویسم که در یکی از فرمها احتیاج دارم اعداد بین 1تا20را به طور ترتیبی بهم برگردونه.اگه کسی میدونه کدش چیه لطفا بهم کمک کنه.
ممنون میشم.
 

disert_falcon

عضو جدید
سلام
دوستان من احتیاج مبرم و حیاتی به یه آموزش کوئیک ریپورت تو دلفی دارم
هر کسی می تونه کمک کنه
ممنون:cry::confused:
 

تورج پوربهرام

عضو جدید
کاربر ممتاز
برنامه ای به زبان دلفی میخواستم

برنامه ای به زبان دلفی میخواستم

برنامه ارزش یابی کارمندان را در خود ذخیره کنه وپایگاه دادش accessباشه اگه دارید ممنون میشم
 

آوای علم

مدیر تالار مشاوره
مدیر تالار
سلام به همه دوستان

میخوام یک دستگاه فانکشن ژنراتور از طریق کامپیوتر طراحی کنم به این صورت که سیگنال را کامپیوتر بده به نطرتون نوشتن برنامه با دلفی راحتره یا زبان دیگه ای بهتر هست ؟
 

mohpersia

عضو جدید
کمک فوری در چاپ عناصر dbgrid بر روی کاغذ با استفاده از پرینتر

کمک فوری در چاپ عناصر dbgrid بر روی کاغذ با استفاده از پرینتر

با سلام من میخواستم بدونم چطور و با چه دستوری میتوان عناصر dbgrid را با استفاده از پرینتر چاپ کرد خیلی فوری
 

اسرین23

عضو جدید
سلام می خواستم ببینم اگه بخوام برای گزارشی که می خوام تولید کنم تو یه صفحه دیگه شرط بگزارم توquick reportچه کار هی باید بکنم مثلا یه queryباید بزارم .
چطوری می خواد اطلاعاتی که تو یه صفحه دیگه هست رو نشون بده
 

ayask

عضو جدید
سلام می خواستم ببینم اگه بخوام برای گزارشی که می خوام تولید کنم تو یه صفحه دیگه شرط بگزارم توquick reportچه کار هی باید بکنم مثلا یه queryباید بزارم .
چطوری می خواد اطلاعاتی که تو یه صفحه دیگه هست رو نشون بده

میتونی اون صفحه رو به quick report ات use کنی و از اطلاعاتش استفاده کنی ، alt+f11 رو بفشار ، دقیقا متوجه منظورم میشی ....

کمک فوری در چاپ عناصر dbgrid بر روی کاغذ با استفاده از پرینتر
با سلام من میخواستم بدونم چطور و با چه دستوری میتوان عناصر dbgrid را با استفاده از پرینتر چاپ کرد خیلی فوری​

عناصر dbgrid شما در واقع یک datasource هستند ، میتونی یک quick report یا هر report دیگه ای اضافه کنی و در اونجا اطلاعاتت رو باند کنی و بقیه اش هم که دیگه آماده است ... :D
 

red live

عضو جدید
سلام من با زبان دلفی اشنا نیستم اگر میشه لطفا برنامه یا سورس ماشین حساب مهندسی به زبان دلفی رو بهم بگید ممنون میشم.
 

عسل گلی

عضو جدید
سلام
میخواستم بدونم این برنامه که سورسشوگذاشتم کاربردش چیه...
اگه ازدوستان بتونن کمکم کنن ممنونشون میشم:gol:
--------------------------------------------------------------------------------------------------------------------------------------------
[FONT=&quot]unit Main2;

interface

{-----------------------------------------------------------------------------}

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls;

{-----------------------------------------------------------------------------}

const
WM_USER = 1024;
WM_CAP_DRIVER_CONNECT = 1034;
WM_CAP_DRIVER_DISCONNECT = 1035;
WM_CAP_GET_FRAME = 1084;
WM_CAP_COPY = 1054;

WM_CAP_START = WM_USER;
WM_CAP_DLG_VIDEOFORMAT = WM_CAP_START + 41;
WM_CAP_DLG_VIDEOSOURCE = WM_CAP_START + 42;
WM_CAP_DLG_VIDEODISPLAY = WM_CAP_START + 43;
WM_CAP_GET_VIDEOFORMAT = WM_CAP_START + 44;
WM_CAP_SET_VIDEOFORMAT = WM_CAP_START + 45;
WM_CAP_DLG_VIDEOCOMPRESSION = WM_CAP_START + 46;
WM_CAP_SET_PREVIEW = WM_CAP_START + 50;

PICWIDTH = 640;
PICHEIGHT = 480;

{-----------------------------------------------------------------------------}

type
TfmMain = class(TForm)
Panel1 : TPanel;
Button2 : TButton;
procedure FormDestroy (Sender: TObject);
procedure FormCreate (Sender: TObject);
procedure Button2Click (Sender: TObject);
private
FCapHandle : THandle;
public

end;

{*****************************************************************************}

var
fmMain: TfmMain;

{*****************************************************************************}

implementation

{$R *.dfm}


{-----------------------------------------------------------------------------}

function capCreateCaptureWindow(lpszWindowName: LPCSTR; dwStyle: DWORD;
x, y, nWidth, nHeight: integer; hwndParent: HWND; nID: integer): HWND; stdcall;
external 'AVICAP32.DLL' name 'capCreateCaptureWindowA';

//------------------------------------------------------------------------------

procedure TfmMain.FormCreate(Sender: TObject);
begin
FCapHandle:= capCreateCaptureWindow('Video', WS_CHILD or WS_VISIBLE, 0, 0, PICWIDTH, PICHEIGHT, panel1.Handle, 1);

SendMessage(FCapHandle, WM_CAP_DRIVER_CONNECT,0,0);
SendMessage(FCapHandle, WM_CAP_DLG_VIDEOSOURCE,0,0);
SendMessage(FCapHandle, WM_CAP_DLG_VIDEOFORMAT,0,0);

end;

{-----------------------------------------------------------------------------}

procedure TfmMain.FormDestroy(Sender: TObject);
begin
SendMessage(FCapHandle,WM_CAP_DRIVER_DISCONNECT, 0, 0);
end;

{-----------------------------------------------------------------------------}

procedure TfmMain.Button2Click(Sender: TObject);
Var i:integer;
begin
For i:=1 to 100 do begin //Only for testing
SendMessage(FCapHandle,WM_CAP_GET_FRAME, 0, 0); end;
end;

end.[/FONT]
 

Amin_Dadkhah

عضو جدید
سلام.
خسته نباشید.
ببخشید یه مشکل دارم امکان داشتی فوری کمکم کنید.ممنون.
من در دلفی 7 4 تا فرم درست کردم. میخوام در فرم 4 یه دگمه بزارم تا وقتی روش کلیک میکنم کدم اجرا بشه.
منظور کلی: شرط گذاشتم اگر در
فرم یک
'edit1.text = 'ali بود فرم 2 را نشان بده. در غیر اینصورت فرم 3 را نشان بده.

در کل من فقط نمیدونم چطوری باید از فرم 4 به فرم یک وصل بشم تا شرط رو بررسی کنه.
خواهش میکنم کمکم کنید. فوری هست.
با سپاس فراوان
 

FARZANEH21N

عضو جدید
خطا در اجرای برنامه

خطا در اجرای برنامه

با سلام
من یک برنامه به زبان دلفی دارم که دیتابیسش sql هست. بعد از اینکه ویندوز سیستمم رو عوض کردم و حالا که فایل exe را اجرا می کنم خطای 1% could not be found را به من می دهد:cry: . کسی می دونه علت نمایش این خطا چی می تونه باشه؟
با تشکر
 

rasooli2010

عضو جدید
با سلام
من یک برنامه به زبان دلفی دارم که دیتابیسش sql هست. بعد از اینکه ویندوز سیستمم رو عوض کردم و حالا که فایل exe را اجرا می کنم خطای 1% could not be found را به من می دهد:cry: . کسی می دونه علت نمایش این خطا چی می تونه باشه؟
با تشکر

خوب database را حتما پیدا نمیکنه یعنی تنظیمات db انجام نشده روی سیستم
 

reza20205

عضو جدید
سلام
من یک برنامه نوشتم که اطلاعات فردی وشناسنامه ای رو در فایل باینری ذخیره میکنه فقط در ذخیره عکس در رکورد فایل باینری مشکل دارم کسی راهی برای این کار بلده ممنون میشم راهنمایی کنید
متشکرم
 

mehrdad007

عضو جدید
سوال در مورد DLL در دلفي
با سلام
من داخل Delphi يك DLL تعريف كردم كه داخل اون DLL يك فرم قرار داره. و DLL رو به يك برنامه ارتباط دادم .
.قتي برنامه رو اجرا مي كنم و بر روي دكمه كليك مي كنم فايل DLL من اجرا ميشه و فرم مربوط به DLL رو باز مي كنه .در اين حالت به عنوان مثال 40000k فضاي Ram رو اشغال مي كنه .وقتي فرم مربوطه به DLL رو مي بندم اين فضا آزاد نمي شه . بايد چي كار كنم زماني كه فرم مربوطه به DLL رو مي بندم فضا آزاد بشه (فرم مربوط به برنامه اصلي باز است )
ممنون ميشم اگه كمك كنيد . از DLL Dynamic استفاده كردم
 

masoud abdi

عضو جدید
با سلام خدمت دوستان عزیز
من دارم یک برنامه به زبان دلفی می نویسم که اطلاعات سیستم ها رو ذخیره می کنه
برای چند تا از قطعات جدول کد گذاشتم که وقتی کاربر مدل رو انتخاب می کنه تو جدول اصلی کد اضافه بشه
بعنوان مثال برای قطعه مادر برد می خوام دو تا dbcombobox بزارم که تو dbcombobox اولی مارک مادر برد انتخاب بشه
بعد dbcombobox دومی مدلهای مربوط به اون مارک رو نشون بده
هم مارک و هم مدل مادر برد ها داخل یه جدول به اسم mbcode ذخیره شدن
با تشکر از دوستان
 

smad+

عضو جدید
سلام. کسی میدونه پروسیجر رو تو دلفی کجا و چه جوری باید تعریف کنیم؟
تو رو خدا جواب بدید.
ممنون
 

minair2004

عضو جدید
در قسمت implementation یا public و... بستگی به نیاز.مثلا در قسمت public بزاری در فرم های دیگه هم می تونی ازش استفاده کنی
برای تعریف اگر در قسمت public باشه
Procedure xyz(a, b : Integer);

و در قسمت implementation
Procedure xyz(a, b : Integer);
begin
.
.
.
end;

البته شکل کلی همینه
 

navidrajabi90

عضو جدید
سلام دوست عزیز
ابتدا باید نوع ان را مشخص نماید که به صورت عمومی است یا خصوصی
اگر عمومی است در قسمت public مشخصات پروسیجر را بنویسید به مثال زیر توجه نماید
پراسیجر نام پراسیجر پرانتز باز پارامتر های ورودی پرانتز بسته
Procedure ShowM(StrName:String);
بهد از انجام این کار باید بدنه پراسیجر را بسازید که برای انجام این کار کلید روبرو را با هم فشار دهید Ctrl+Shift+C
حالا اگر شما دقت کنید بدنه ان ساخته شده و هم اکنون دستورات مورد نظر را وارد نماید.
procedure TForm1.ShowM(StrName: String);
begin
ShowMessage('Welcome '+StrName);
end;
حالا برای اجرای ان در هر جا به شکل زیر عمل نماید
showm('Navid');
این به صورت عمومی بود و برای ایجاد پراسیجر خصوصی تنها باید هنگام معرفی در قسمت private باشد.
امیدوارم که مشکلتون حل شده باشد.
 

navidrajabi90

عضو جدید
سلام دوست عزیز
شما یا باید از دو جدول استفاده نماید یا اینکه یک جدولی با این فیلدها بسازید که دارای فیلدهای Id,GCode,LCode,Title,Sayer باشد حالا فیلد GCode را برای گروه قطعات استفاده نماید و از فیلد LCode برای زیر مجموعه ان استفاده نماید بعد از انجام این کار شما باید دو کوری در فرم مورد نظر بگیرید که یکی والد و دیگری فرزند باشد و در واقع اگر بتوانید master و Deatial را درست کنید مشکل شما حل خواهد شد.
باز اگر مشکل شما حل نشد بگو تا یک نمونه به ایمیلت ارسال کنم.
 

navidrajabi90

عضو جدید
سلام دوست عزیز شما در FormClose دستور زیر را وارد نماید.
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
این خط کد باعث می گردد تا ان قسمت از حافظه که به این مورد اختصاص داده شده را رها نماید.
Action:=caFree;
end;
 

Similar threads

بالا