You need to enable JavaScript in order to visit our site!
 
Logo PTMC
NAVIGATION
CANCEL
 
or via PTMC account
Restore password
or via PTMC account
Logo PTMC
NAVIGATION
or via PTMC account
Restore password
or via PTMC account
or via PTMC account
Restore password
or via PTMC account

PaintChartEventArgs (Graphics gr, Rectangle rectangle)

constructor
Constructor for PaintChartEventArgs class with graphics, rectangle input parameters

Syntax

public PaintChartEventArgs (Graphics gr,Rectangle rectangle)

Parameters

gr — Graphics
rectangle — Rectangle

Example


using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;
using System.Drawing;
using PTLRuntime.NETScript;
using PTLRuntime.NETScript.Charts;
using System.Windows.Forms;
using System.Drawing.Drawing2D;

namespace CustomCrosshairExamples
{
     public class CustomCrosshairExamples : NETStrategy
     {
         public override void OnQuote()
         {
             [InputParameter("Color", 0)]
             public Color Color = Color.Blue;
 
             [InputParameter("Width", 1)]
             public int Width = 1;
 
             [InputParameter("Style", 2, new object[] {
             "Solid", DashStyle.Solid,
             "Dot", DashStyle.Dot,
             "Dash", DashStyle.Dash,
             "DashDot", DashStyle.DashDot,
             "DashDotDot", DashStyle.DashDotDot}
             )]
             public DashStyle Style = DashStyle.Solid;

             public override void Init()
             {
                 pen = new Pen(Color, Width);
                 pen.DashStyle = Style;
                 font = new Font("Tahoma", 10);
                 brush = new SolidBrush(Color);
                 LineVisible[0] = false;
             }
 
             private Pen pen;
             private Font font;
             private Brush brush;

             public override void OnPaintChart(object sender, PaintChartEventArgs args)
             {
                 Graphics gr = args.Graphics;
                 Rectangle rect = args.Rectangle;

                 //getting the cursor position in the client coordinates
                 Point clientPoint = CurrentChart.PointToClient(Cursor.Position);
                 int x = clientPoint.X;
                 int y = clientPoint.Y;

                 //draw anything when we out of the chart
                 if (x < rect.X || x > rect.X + rect.Width || y < r rect.Y || y > rect.Y + rect.Height)
                 return;

                 args.Graphics.DrawLine(pen, x, rect.Y, x, rect.Y + rect.Height);
                 args.Graphics.DrawLine(pen, rect.X, y, rect.X + rect.Width, y);

                 //getting price and time by client cooridnates
                 TimePrice timePrice = CurrentChart.GetTimePrice(x, y);
                 string text = Instruments.Current.FormatPrice(timePrice.Price) + "\n" + timePrice.Time.ToLocalTime().ToString("dd.MM.yyyy HH:mm");
                 args.Graphics.DrawString(text, font, brush, x + 15, y + 10);
             }
         }
     }
}
 
Discussion
Join PTMC community to post your comments
No comments yet. Be the first.
PTMC is a professional trading platform that combines all the best charting and analytical tools to trade on different financial markets. It is developed by PFSOFT UK LTD, a global provider of trading technology for banks & brokers
© 2024. PTMC is based on Protrader technology
PFSOFT UK LTD
71-75, Shelton Street,
Covent Garden,
London, WC2H9SQ,
United Kingdom
Support & Development
PFSOFT Ukraine
Office #701
Mechnikova Street, 10B
49000, Dnipro, Ukraine
Contact us
Phone: +380 56 740 30 01
E-mail: info@protrader.org
Skype: PTMC_support
Find more ways to contact
Join us in social networks