Lavorare con le finestre personalizzate in cTrader Algo
In questo articolo e nel video corrispondente parleremo di come lavorare con le finestre personalizzate durante la creazione di algoritmi cTrader. Spiegheremo cosa sono le finestre personalizzate e come possono essere utilizzate nei tuoi cBot e indicatori. Creeremo inoltre un esempio di utilizzo di una finestra personalizzata in un cBot.
Esempio di finestra personalizzata
Passeremo ora all'app Algo per vedere un'illustrazione di come le finestre personalizzate possono essere utilizzate nei tuoi cBot e indicatori. Creeremo un nuovo indicatore; al suo interno utilizzeremo semplicemente un esempio già pronto dalla documentazione.
Copia e incolla il codice dalla documentazione nella finestra dell'editor di codice. Quindi, crea l'indicatore e aggiungi un'istanza di esso a un grafico.
Non appena l'indicatore viene aggiunto, dovremmo vedere comparire una finestra personalizzata. Questa finestra contiene un modulo complesso che visualizza informazioni sul simbolo al cui grafico l'indicatore è attualmente collegato. Questo modulo è un ottimo esempio di ciò che si può ottenere con le finestre personalizzate.
Finestre personalizzate vs. WPF e WinForms
Ci sono un paio di motivi per cui utilizzare le finestre personalizzate è meglio che utilizzare WPF o WinForms. Le finestre personalizzate di cTrader sono già dotate di uno stile nativo che corrisponde all'aspetto di cTrader. Le finestre WinForms e WPF richiedono una gestione speciale e competenze di programmazione avanzate poiché vengono eseguite su thread diversi. Tali problemi vengono completamente evitati quando si utilizzano le finestre personalizzate di cTrader.
Creare una finestra personalizzata
Dimostreremo ora come puoi creare una finestra personalizzata da zero. Creeremo un nuovo indicatore e lo chiameremo "Custom Window Example". In questo esempio aggiungeremo una finestra personalizzata e poi aggiungeremo alcuni controlli personalizzati ad essa. La finestra stessa verrà dichiarata nel metodo Initialize(); per mostrare la finestra, chiameremo il metodo window.Show().
1 2 3 4 5 6 7 8 9 10 11 | |
Per vedere la finestra, possiamo creare l'indicatore e aggiungerlo a un grafico.
Aggiungere controlli a una finestra
Aggiungeremo ora controlli personalizzati alla finestra. Questi controlli assumeranno la forma di una casella di testo contenente del testo.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | |
Ricreeremo l'indicatore e aggiungeremo una nuova istanza per vedere come appaiono i nostri controlli personalizzati.
Modificare le proprietà della finestra
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | |
Ricreeremo ancora una volta il nostro indicatore e aggiungeremo un'istanza. Ora l'area della nostra finestra è un rettangolo con una larghezza e un'altezza di 800 pixel.
La prossima modifica sarà aggiungere un intervallo entro il quale la finestra può essere ridimensionata. Per farlo, aggiungeremo i parametri MinHeight, MaxHeight, MinWidth e MaxWidth.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | |
Ricreeremo l'indicatore e, dopo aver aggiunto un'istanza, potremo provare a modificarne le dimensioni. Il ridimensionamento è possibile solo all'interno dell'intervallo di larghezza e altezza specificato.
Possiamo anche cambiare il colore di sfondo di una finestra e renderla non ridimensionabile.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | |
Dopo aver eseguito le azioni consuete (ricreare l'indicatore e aggiungere un'istanza), la finestra dovrebbe avere un nuovo colore di sfondo.
Riepilogo
Le finestre personalizzate di cTrader sono flessibili e possono essere personalizzate in modo approfondito. Oltre alle proprietà menzionate sopra, puoi anche modificare i margini e il padding, la visibilità delle finestre personalizzate e se sono attive in determinate condizioni. Le finestre personalizzate di cTrader espongono anche metodi per mostrarle, nasconderle e chiuderle oltre a diversi altri gestori di eventi.