آموزش قدم به قدم آپادانا

Silver PC

Well-Known Member
سری 20

: GetClipboard​
فرم کلی دستور
کد:
GetClipboard ( )
: ReadFile​
فرم کلی دستور
کد:
ReadFile ( Path:String )
: Time12​
فرم کلی دستور
کد:
Time12 ( )
: Time24​
فرم کلی دستور
کد:
Time24 ( )
: Date​
فرم کلی دستور
کد:
Date ( )
: ShamsiDate​
فرم کلی دستور
کد:
ShamsiDate ( )
: WeekDay​
فرم کلی دستور
کد:
WeekDay ( )
: Month​
فرم کلی دستور
کد:
Month ( )
: DecToHex​
فرم کلی دستور
کد:
DecToHex ( Decimal Value:Integer )
: DecToBin​
فرم کلی دستور
کد:
DecToBin ( Decimal Value:Integer )
: DecToOct​
فرم کلی دستور
کد:
DecToOct ( Decimal Value:Integer )
: OctToBin​
فرم کلی دستور
کد:
OctToBin ( Octal Value:Integer )
: OctToHex​
فرم کلی دستور
کد:
OctToHex ( Octal Value:Integer )
: BinToOct​
فرم کلی دستور
کد:
BinToOct ( Binary Value:Integer )
: BinToHex​
فرم کلی دستور
کد:
BinToHex ( Binary Value:Integer )
: HexToBin​
فرم کلی دستور
کد:
HexToBin ( Hexadecimal Value:Integer )

ادامه دارد ... !
 
آخرین ویرایش:

Silver PC

Well-Known Member
سری 21

: HexToOct​
فرم کلی دستور
کد:
HexToOct ( Hexadecimal Value:Integer )
: ReadByte​
فرم کلی دستور
کد:
ReadByte (Path:String;Byte Index:String)
: RegReadString​
فرم کلی دستور
کد:
RegReadString (Name:String)
: INIReadString​
فرم کلی دستور
کد:
INIReadString (Section:String;Name:String)
: GetEXEData​
فرم کلی دستور
کد:
GetExeData ( Exe File:String )
: FlashGetVar​
فرم کلی دستور
کد:
FlashGetVar (Object Name:String;Variable Name:String)

ادامه دارد ... !
 
آخرین ویرایش:

Silver PC

Well-Known Member
سری 22

: IF Clause​
بعضی مواقع شما میخواهید یک دستور را به صورت شرطی اجرا کنید.در آپادانا برای این کار از دستور IF استفاده می کنیم !

فرم کلی این دستور به صورت زیر می باشد :
کد:
IF ( [Clause] ) THEN
.
.
ELSE
.
.
END
اگر شما نمیخواهید فقط در صورت 1 شرط دستور اتفاق بیفتند یعنی 2 یا بیشتر به مثال زیر که برای 3 شرط است توجه کنید
کد:
IF ( [Clause1] ) & ( [Clause2] ) & ( [Clause3] ) THEN
{True commands!}
.
ELSE
{False commands!}
.
END
یا نمونه دیگر
کد:
IF ( [Clause1] ) | ( [Clause2] ) THEN
{True commands!}
.
ELSE
{False commands!}
.
END
--
: Interger/Boolean​
مثال :
کد:
if (#myint<>10) then
#myint=#myint+1
if (#myint=5) then
  msg("Now 5 times")
end
if (#myint=>6) then
  msg("Executed "+#myint+" times!")
end
else
msg("You aren't able to execute this action anymore!")
end
: String​
مثال :
کد:
if ($edit1="mypasscode") then
msg("Yeah! Right password!")
else
msg("Sorry! Invalid password")
end

برای توضیحات بیشتر به این تاپیک مراجعه کنید : اینجا

ادامه دارد ... !
 
آخرین ویرایش:

Silver PC

Well-Known Member
سری 23

: IF Clause​
بعضی مواقع شما میخواهید یک دستور را به صورت شرطی اجرا کنید.در آپادانا برای این کار از دستور IF استفاده می کنیم !

فرم کلی این دستور به صورت زیر می باشد :
کد:
IF ( [Clause] ) THEN
.
.
ELSE
.
.
END
اگر شما نمیخواهید فقط در صورت 1 شرط دستور اتفاق بیفتند یعنی 2 یا بیشتر به مثال زیر که برای 3 شرط است توجه کنید
کد:
IF ( [Clause1] ) & ( [Clause2] ) & ( [Clause3] ) THEN
{True commands!}
.
ELSE
{False commands!}
.
END
یا نمونه دیگر
کد:
IF ( [Clause1] ) | ( [Clause2] ) THEN
{True commands!}
.
ELSE
{False commands!}
.
END
--
: Interger/Boolen​
مثال :
کد:
if (#myint<>10) then
#myint=#myint+1
if (#myint=5) then
  msg("Now 5 times")
end
if (#myint=>6) then
  msg("Executed "+#myint+" times!")
end
else
msg("You aren't able to execute this action anymore!")
end
: String​
مثال :
کد:
if ($edit1="mypasscode") then
msg("Yeah! Right password!")
else
msg("Sorry! Invalid password")
end

برای توضیحات بیشتر به این تاپیک مراجعه کنید : اینجا

ادامه دارد ... !
 
آخرین ویرایش:

Silver PC

Well-Known Member
سری 24

: For Cycle​
بعضی مواقع شما میخواهید که یک دستور چندین بار اجرا شود که در آپادانا باید از حلقه ها استفاده کنید
فرم کلی دستور :
کد:
FOR ( #[Integer Variable Name]=[Start Value] , [End Value] ) STEP [Real Number(Default=1)] 
.
.
END
مثال :
کد:
For (#i=1,10)
Msg("I'm a message box! I'm the number "+#i+" displayed.")
End
مثال دیگر :
کد:
For (#i=0.1,1) step 0.1
Msg("I'm a message box! I'm the number "+#i+" displayed.")
End

ادامه دارد ... !
 
آخرین ویرایش:

Silver PC

Well-Known Member
سری 25

Advanced Development​

: Dynamic Paths​
2 نوع راه وجود دارد که شما میتوانید از آنها استفاده کنید :
: FixedPath​
این یک راه است که همیشه فقط روی کامپیوتر شما کار می کند.بنابراین این یک راه مفید است برای آزمایش برنامه و هنگامی که میخواهید برنامه خود را بسازید
: Dynamic Path​
این یک راه دیگر است که روی هر کامپیوتری میتوانید استفاده کنید.وقتی از این روش استفاده میکنید استفاده از روش قبلی ممکن نیست !
: Source Dir​
برمیگردد به پوشه ای که برنامه در آن قرار دارد.برای مثال اگر شما برنامه خود را در آدرس
کد:
D:\MyProject\MyApp.exe
کمپایل کنید نتیجه
کد:
D:\MyProject\
خواهد بود
: Source Drive​
برمیگردد به درایوی که برنامه در آن قرار دارد.برای مثال اگر شما برنامه خود را در آدرس
کد:
D:\MyProject\MyApp.exe
کمپایل کنید نتیجه
کد:
D:/
خواهد بود
: Windows Dir​
برمیگردد به پوشه ای که ویندوز در آن نصب است.برای مثال اگر ویندوز در درایو سی نصب باشد نتیجه
کد:
C:/Windows/
خواهد بود
: System32 Dir​
برمیگردد به پوشه system32 . برای مثال اگر ویندوز در درایو c نصب باشد نتیجه
کد:
C:\Windows\system32\
خواهد بود
: Temp Dir​
برمیگردد به پوشه temp . برای مثال
کد:
C:\DOCUME~1\Nick\LOCALS~1\Temp\

: Embedded Dir

برمیگردد به پوشه پیشفرضی که فایلهای جاسازی شده در برنامه در آن قرار دارند.برای مثال
کد:
C:\DOCUME~1\Javid\LOCALS~1\Temp\ANTEMP\
توجه داسته باشید که فقط بعد از کمپایل برنامه میتوانید این ادرس را بدست اورید
: USB Input​
برمیگردد به درایو های usb . برای مثال
کد:
G:/
ادامه دارد ... !
 
آخرین ویرایش:

Silver PC

Well-Known Member
سری 26

: MultiThreading​
برنامه های ویندوز بر پایه Thread ها هستند . وقتی یک برنامه را اجرا می کنید کدهای برنامه برپایه Thread ها لود میشوند
همه برنامه ها دست کم یک رشته دارند که آنها را اجرا کنند
Issues​
آپادانا تمامی ویژگی های خوب MultiThreading را داراست
در این ورژن شما نمیتوانید یک شی RunTime بسازید موقعی که کد بر پایه رشته هاست
Thread Priority
همه رشته ها دارای اولویت هستند.فرمانهای رشته های ویندوز بر پایه اولویت آنها اجرا میشوند
--
MultiThreading In Apadana​
برای ساخت یک برنامه چندریسمانی در آپادانا اول شما نیاز به ساخت یک رشته دارید که بر پایه آن باشد
سپس شما با استفاده از نام تابع ها میتوانید از آنها استفاده کنید
Create Thread​
در تولبار بر روی دکمه Threads کلیک کنید سپس در پنجره باز شد بر روی دکمه Create a New Thread کلیک کنید و شماره آنرا به خاطر بسپارید
Delet Thread​
در تولبار بر روی دکمه Thread کلیک کنید و در پنجره باز شده رشته مورد نظر را انتخاب و دکمه Delete را بزنید
Thread Setting​
در تولبار بر روی دکمه Thread کلیک کنید سپس در پنجره بار شده رشته موردنظر را انتخاب کنید و در قسمت priority تنظیم دلخواه را انجام دهید
Using Thread​
شما به راحتی میتوانید از رشته ها استفاده کنید . جلسات بعد با نحوه استفاده از آنها آشنا میشویم

ادامه دارد ... !
 
آخرین ویرایش:

Silver PC

Well-Known Member
سری 27

Custom Functions​
در آپادانا شما میتوانید تابع دلخواه خود را ساخته و دستور دلخواه نیر به آن بدهید و به آسانی از آن استفاده کنید
باید توجه داشته باشید که اگز از یک تابع د ر برنامه استفاد می کنید و آنرا حذف کنید برنامه هنگام کمپایل ارور میدهد ( با خطا مواجه میشود )

Create a Function​
برای ساختن یک تابع میتوانید :
در تولبار بر روی دکمه Functions and Procedures کلیک کنید سپس در پنجره باز شده بر روی دکمه Add Function کلیک کنید.یک نام برای آن انتخاب کنید و رشته مورد نظر را هم از کمبوباکس مقابل آن انتخاب کنید . شما میتوانید کلیدهای میانبر نیز برای آنها تعریف کنید که در پایین همین پنجره وجود دارد

Delete a Function​
در تولبار بر روی دکمه Functions and Procedures کلیک کنید سپس در پنجره باز شده تابع موردنظر را انتخاب کرده و بر روی دکمه Delete کلیک کنید

Edit a Function​
برای ویرایش یک تابع میتوانید :
در تولبار بر روی دکمه Functios and Procedures کلیک کنید سپس تابع مورد نظر خود را انتخاب کنید و بر روی آن دابل کلیک نمایید یا بر روی دکمه Edit Function در پایین پنجره کلیک کنید

ادامه دارد ... !
 
آخرین ویرایش:

Silver PC

Well-Known Member
سری 28

بعضی قابلیت ها و ویژگی ها را برنامه ندارد و شما با استفاده از کدهای برنامه قادر به انجام آنها نیستید.شما میتوانید از پلاگین ها استفاده کنید که کار شما را راحت میکنند و بسیاری از مشکلات شما را حل میکنند.آپادانا فقط قادر به پشتیبانی از پلاگین های نرم افزار مالتی مدیا بیلدر می باشد که بیشتر شما این نرم افزار را با نام MMB میشناسید
فرمت این فایل ها DLL می باشد و شما براحتی در آپادانا میتوانید از آنها استفاده کنید
شما باید از شی MMBPlugIn در برنامه استفاده کنید

تصور کنید که ما یک پلاگین به نام "MMBPlugin1" داریم !

برای اجرای دستور پلاگین MMB مثل تابع " PlugInRun " در MMB

کد:
obj("MMBPlugin1").Run("??")

برای ارسال مقدار مثل تابع " PlugInSet " در MMB

کد:
obj("MMBPlugin1").Set("??")

برای بدست آوردن مقدار بازگشتی مثل تابع " PlugInGet " در MMB

کد:
obj("MMBPlugin1").Get($myvalue)

نتیجه در MyValue$ ذخیره خواهد شد . اگر مقدار بازگشتی عدد صحیح است شما میتوانید :

کد:
obj("MMBPlugin1").Get(#myvalue)

موفق باشید !

ادامه دارد ... !
 
آخرین ویرایش:

Silver PC

Well-Known Member
سری 29

File Downloading​
در آپادانا برای دانلود یک فایل از اینترنت 2 راه برای شما وجود دارد :
استفاده از دستور Download بدون استفاده از شی Browser
استفاده از دستور Download با استفاده از شی Browser
مثال :
کد:
Obj("Browser1").Download("source","dest")
کمپایل نهایی پروژه
خود پرويه هنگام اجرا شدن در محید آپادانا یک فایل اگزه از خودش را تولید می کند اما این فایل :
روی همه سیستم ها کار نمیکند
از امنیت خوبی برخوردار نمی باشد
فایلهای جاسازی شده در برنامه قابل استفاده نمیباشند
پس باید پروژه خود را بصورت مجزا کمپایل کنیم !
برای کمپایل پروژه خود میتوانید
از منوی Project گزینه Publish را انتخاب کنید
در تولبار بر روی دکمه Publish کلیک کنید
از کلید های ترکیبی SHIFT + F9 کیبورد استفاده کنید
بعد از انتخاب یکی از راههای پنجره مربوط به کمپایل ظاهر میشود
حال به تشریح جزییات صفحه کمپایل میپردازیم
: General Setting​
: Path​
محلی که پروژه شما در آن کمپایل میشود
: Compress generated file​
اگر شما این گزینه را فعال کنید آپادانا فایلها را با UPX فشرده میکند
: Generate Autorun.inf​
با فعال کردن تیک این گزینه یک فایل Autorun.inf نیز کنار پروژه تولید میشود که یکی از کاربردهای آن این است که بعد از رایت پروژه بر روی سی دی فایل پروژه ما خود به خود اجرا میشود
Icon​
در این قسمت یک آیکن برای پروژه خود انتخاب می کنیم
Version Info​
شما باید این فیلدها را پرکنید . اینها توضیحاتی برای برنامه شما میباشند
Embedded Files​
این قسمت برای تنظیمات فایلهای جاسازی شده در برنامه است
--
حال که همه تنظیمات راانجام داده ایم بر روی کلید OK کلیک می کنیم و محل ذخیره پروژه را انتخاب می کنیم سپس پیغامی ظاهر میشود که Yes را انتخاب می کنیم . حال پروژه ما کمپایل شده و بصورت یک فایل EXE در پوشه ای که انتخاب کردیم وجود دارد
 
آخرین ویرایش:

HamedSoftware

New Member
سلام ممنون بابت این آموزش

میخواستم بدونم حتما برای اینکه از یک فرم بخواهیم با استفاده از دکمه بریم به فرم بعدی باید برنامه نویسی بشه ؟؟خط دستورش چیه ممنون

 

JavidX

Apadana Developer
سلام ممنون بابت این آموزش

میخواستم بدونم حتما برای اینکه از یک فرم بخواهیم با استفاده از دکمه بریم به فرم بعدی باید برنامه نویسی بشه ؟؟خط دستورش چیه ممنون


سلام

فقط این رو توی قسمت کد بنویسید تا به صفحه ی بعد برید:
کد:
NextPage
موفق باشید
 

HamedSoftware

New Member
lممنون
فقط میشه یک توضیحی در مورد خروجی آخر و ساخت یک دی وی دی هم بدید؟؟

مثلا میشه تمامی کارها رو به صورت یک فایل Iso خروجی گرفت؟؟
 

+Mohammad+

Well-Known Member
نسخه ی موجود چنین قدرتی رو نداره که به صورت فایل iso خروجی بگیرید
خروجی به صورت exe ساخته میشه
شاید نسخه های بعدی چنین قابلیتی داشته باشن
موفق باشید
 

NAVID-DIN

New Member
دوست عزيز سلام
مطالبتون خيلي مفيده مرسي، لطفا اگه ميشه توضيح بدين كه چه جوري فيلد جستجو هم بسازيم
بازم ممنون
 

NAVID-DIN

New Member
سلام.
فیلد جستجو در چه چیزی؟
سلام
من با آپادانا یه برنامه نوشتم شبیه به دفتر تلفن که واسه هر فرد یک فرم جدا گانه ساختم حالا میخوام یه فیلد بسازم که اسم هر کدوم رو داخل فیلد نوشتم و دکمه جستجو رو زدم فرم مورد نظرمو نمایش بده
 

JavidX

Apadana Developer
سلام
من با آپادانا یه برنامه نوشتم شبیه به دفتر تلفن که واسه هر فرد یک فرم جدا گانه ساختم حالا میخوام یه فیلد بسازم که اسم هر کدوم رو داخل فیلد نوشتم و دکمه جستجو رو زدم فرم مورد نظرمو نمایش بده
سلام
تا ندونیم از چه سیستمی استفاده کردید و اطلاعات چطوری ذخیره شده نمیتونم کمکی بکنم!
 

NAVID-DIN

New Member
سلام دوست عزيز
اگه بخوام چنين چيزي بسازم چي ؟
untitled.JPG
تو يه فرم دو تا شي دارم يه تكس باكس و يه ليست
خودم از طريق برنامه قبلا يه سري اسم وارد ليست كردم حالا ميخوام وقتي تو تكس باكس اسم مورد نظرم رو تايپ كردم سلكت شه و وقتي روش كليك كردم فرم مورد نظرم باز شه .
مرسي
 

+Mohammad+

Well-Known Member
خب توی مثالای خود نرم افزار توی پوشه ی Samples موجود در شاخه ی نصب ، یک مثال کامل در مورد کار با دیتابیس هست که جستجو هم به همین صورت داره ... یه نگاه بهش بندازید..

ایام به کام - موفق باشید
 

جدیدترین ارسال ها

بالا