دکمه

دکمه

برای اینکه یک مستطیل گرافیکی به وسیله اکسپرت یا اندیکاتور داخل چارت بیندازیم باید دو اقدام انجام دهیم:

دکمه

1- تابع دکمه را در اکسپرت یا اندیکاتور کپی کنید.

				
					bool Button(const long                    chart_ID=0,               // ای دی چارت
            const string            name="Button",            // اسم
            const int               sub_window=0,             // شماره پنجره
            const int               x=0,                      // X فاصله محور
            const int               y=0,                      // Y فاصله محور
            const int               width=50,                 // عرض دکمه
            const int               height=18,                // ارتفاع دکمه
            const ENUM_BASE_CORNER  corner=CORNER_LEFT_UPPER, // انتخاب گوشه چارت
            const string            text="Button",            // نوشته درون دکمه
            const string            font="Arial",             // فونت
            const int               font_size=10,             // سایز فونت
            const color             clr=clrBlack,             // رنگ نوشته
            const color             back_clr=C'236,233,216',  // رنگ دکمه
            const color             border_clr=clrNONE,       // رنگ کادر دکمه
            const bool              state=false,              // حالت دکمه ،کلیک شده / کلیک نشده
            const bool              back=false,               // قرار گرفتن در پشت
            const bool              selection=false,          // قابلیت حرکت
            const bool              hidden=true,              // مخفی شدن از لیست
            const long              z_order=0)                // اولویت برای کلیک ماوس
  {
   ResetLastError();
   if(ObjectCreate(chart_ID,name,OBJ_BUTTON,sub_window,0,0))
     {
      ObjectSetInteger(chart_ID,name,OBJPROP_XDISTANCE,x);
      ObjectSetInteger(chart_ID,name,OBJPROP_YDISTANCE,y);
      ObjectSetInteger(chart_ID,name,OBJPROP_XSIZE,width);
      ObjectSetInteger(chart_ID,name,OBJPROP_YSIZE,height);
      ObjectSetInteger(chart_ID,name,OBJPROP_CORNER,corner);
      ObjectSetString(chart_ID,name,OBJPROP_TEXT,text);
      ObjectSetString(chart_ID,name,OBJPROP_FONT,font);
      ObjectSetInteger(chart_ID,name,OBJPROP_FONTSIZE,font_size);
      ObjectSetInteger(chart_ID,name,OBJPROP_COLOR,clr);
      ObjectSetInteger(chart_ID,name,OBJPROP_BGCOLOR,back_clr);
      ObjectSetInteger(chart_ID,name,OBJPROP_BORDER_COLOR,border_clr);
      ObjectSetInteger(chart_ID,name,OBJPROP_BACK,back);
      ObjectSetInteger(chart_ID,name,OBJPROP_STATE,state);
      ObjectSetInteger(chart_ID,name,OBJPROP_SELECTABLE,selection);
      ObjectSetInteger(chart_ID,name,OBJPROP_SELECTED,selection);
      ObjectSetInteger(chart_ID,name,OBJPROP_HIDDEN,hidden);
      ObjectSetInteger(chart_ID,name,OBJPROP_ZORDER,z_order);
      ChartRedraw();
      return(true);
     }
   else
     {
      Print(__FUNCTION__,
            ": failed to create => ",name," object! Error code = ",GetLastError());
      return(false);
     }
  }
				
			

2- فراخوانی تابع دکمه و مقدار دهی آن

به تابع دکمه، 19 ورودی دادیم که رو به روی هر ورودی نوشته‌ایم چه کاری برای ما انجام میدهد که شما بر حسب نیازتان بتوانید خط دلخواهتان را بکشید.

ما در پایین کدی که برای کشیدن یک دکمه لازم است را نوشته‌ایم و کافی است شما آن را در جای مناسب کپی کنید.

تنها کافی است اسم و مختصات X ‌و Y و عرض و ارتفاع را تغییر دهید.
همچنین میتوانید رنگ دلخواهتان را انتخاب کنید و بجای رنگی که ما قرار دادیم بگذارید.

نکته: اسم‌ها نباید یکسان باشند و برای هر آبجکتی باید اسم منحصر‌ به فردی انتخاب کرد.

برای فراخوانی، کد زیر را در تابع OnInit کپی کنید.

				
					Button(0,"close",0,280,130,120,30,0,"close","Arial",10,clrBlack,clrOrangeRed);
				
			

شما میتوانید کد بالا را کپی کنید و مقدار دلخواهتان را تغییر دهید.

بدون دیدگاه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *