Sarebbe meglio se riservassero lo spazio per le etichette delle notizie, perché rendono davvero difficile vedere il fondo del grafico, soprattutto quando è lì che il prezzo viene scambiato. E quando vengono rimossi vengono ripristinati di nuovo dopo qualche tempo. E come disattivarli non l'ho trovato.
BlackTomcat: Sarebbe meglio riservare lo spazio per i marchi di notizie, perché sono una vera seccatura da guardare nella parte inferiore del grafico, soprattutto quando il prezzo è scambiato lì. E quando vengono rimossi, vengono ripristinati di nuovo dopo qualche tempo. E come disabilitarli non l'ho trovato.
Puoi cambiare manualmente la scala verticale: passa il puntatore del mouse sopra i prezzi, LKM e trascina...
Puoi cambiare manualmente la scala verticale: sposta il puntatore del mouse sui prezzi, LKM e trascina...
Grazie, farò una prova quando torno a casa. Ma in realtà ho un portatile e uso il touchpad. Pertanto, alcune manipolazioni che sono facili da eseguire con un mouse, sul touchpad si trasformano in un trucco acrobatico. E poi ci sono le tavolette...
In linea di principio, posso impostare una scala fissa tramite le proprietà del grafico e ottenere così un campo libero in basso. Ma l'autoscala è molto più conveniente se, per esempio, il prezzo scende (sale) costantemente e aggiorna i minimi (massimi) quasi ad ogni tick. E i recenti eventi nella sterlina mostrano che tali movimenti possono essere molto profondi e molto veloci - non c'è tempo per cambiare la scala. :)
Chi sa come ottenere i parametri di un grafico non corrente? Il fatto è che tutto funziona bene finché il grafico corrente è attivo. Ma se passo a un altro, gli eventi non arrivano e non posso ottenere le informazioni attuali tramite ChartGet.
Risulta che solo il grafico attivo viene reso, o c'è un modo per aggirarlo?
Aggiornamento: ho parzialmente risolto il problema con il ridisegno forzato, è possibile rilevare il ridimensionamento delgrafico, ma ChartXYToTimePrice restituisce dati non proprio corretti - se apro il grafico richiesto manualmente, tutto funziona come dovrebbe. Non ho ancora scoperto perché.
long currChart=ChartFirst(); while(currChart>=0) { ChartSetInteger(currChart,CHART_BRING_TO_TOP,true); ChartRedraw(currChart); currChart=ChartNext(currChart); }
aggiornato. Un'altra domanda, come determinare se il grafico corrente è attivo, cioè ha un focus?
aggiornato... L'ho capito.
long hWnd = ChartGetInteger(0, CHART_WINDOW_HANDLE); int parent = GetParent(GetParent(hWnd));
int active = SendMessageW(parent, WM_MDIGETACTIVE, 0, 0); // хэндл активного окна
Ciao a tutti. C'è questa strana rientranza in basso e non riesco a toglierla.
Questo spazio è riservato per mostrare i volumi:
Questo spazio è riservato per mostrare i volumi:
Ciao a tutti. Questa oscura rientranza in basso è spuntata e non riesco a toglierla di mezzo.
))))))) e promuovere il tuo blog ))))))))
Sarebbe meglio riservare lo spazio per i marchi di notizie, perché sono una vera seccatura da guardare nella parte inferiore del grafico, soprattutto quando il prezzo è scambiato lì. E quando vengono rimossi, vengono ripristinati di nuovo dopo qualche tempo. E come disabilitarli non l'ho trovato.
Puoi cambiare manualmente la scala verticale: passa il puntatore del mouse sopra i prezzi, LKM e trascina...
Questo spazio è riservato per mostrare i volumi:
Questo è quello che ho pensato. Questo non va bene. E non c'è altro modo che scrivere un indicatore?
Puoi cambiare manualmente la scala verticale: passa il mouse sopra i prezzi, LKM e tira...
Tirare più forte che posso) Il divario è ancora lì
Puoi cambiare manualmente la scala verticale: sposta il puntatore del mouse sui prezzi, LKM e trascina...
Tirando più forte che posso) Il divario è ancora lì
Chi sa come ottenere i parametri di un grafico non corrente? Il fatto è che tutto funziona bene finché il grafico corrente è attivo. Ma se passo a un altro, gli eventi non arrivano e non posso ottenere le informazioni attuali tramite ChartGet.
const long &lparam,
const double &dparam,
const string &sparam)
{
//---
if(id==CHARTEVENT_CHART_CHANGE)
{
printf("chart height: %i",ChartGetInteger(0,CHART_HEIGHT_IN_PIXELS));
}
}
Risulta che solo il grafico attivo viene reso, o c'è un modo per aggirarlo?
Aggiornamento: ho parzialmente risolto il problema con il ridisegno forzato, è possibile rilevare il ridimensionamento delgrafico, ma ChartXYToTimePrice restituisce dati non proprio corretti - se apro il grafico richiesto manualmente, tutto funziona come dovrebbe. Non ho ancora scoperto perché.
while(currChart>=0)
{
ChartSetInteger(currChart,CHART_BRING_TO_TOP,true);
ChartRedraw(currChart);
currChart=ChartNext(currChart);
}
aggiornato. Un'altra domanda, come determinare se il grafico corrente è attivo, cioè ha un focus?
aggiornato... L'ho capito.
int parent = GetParent(GetParent(hWnd));
int active = SendMessageW(parent, WM_MDIGETACTIVE, 0, 0); // хэндл активного окна