Cosa c'è di sbagliato in me? Come posso fare in modo che vengano considerati solo gli ordini aperti? Questo codice cattura anche gli ordini parzialmente chiusi, di cui non ho bisogno
In realtà non ci capisco niente. Perché la funzione di tipo int restituisce un valore di tipo stringa? Non lancia un errore durante la compilazione?
При создании графического объекта функцией ObjectCreate() необходимо указать тип создаваемого объекта, который может принимать одно из значений перечисления ENUM_OBJECT. Дальнейшие уточнения свойств созданного объекта возможно с помощью функций по работе с графическими объектами.
Существуют 11 видов событий, которые можно обрабатывать с помощью функции предопределенной функции OnChartEvent(). Для пользовательских событий предусмотрено 65535 идентификаторов в диапазоне от CHARTEVENT_CUSTOM до CHARTEVENT_CUSTOM_LAST включительно. Для генерации пользовательского события необходимо использовать функцию EventChartCustom...
Ma ho provato a tradurre Tempo, Prezzo con ChartTimePriceToXY in coordinate. Sono stato in grado di disegnare nel posto giusto, ma di nuovo, quando si scorre il grafico, sta in piedi, il che non funziona per me.
È la stessa storia con BitMap, perché è attaccata da coordinate, il che significa che tutte le BitMap staranno al loro posto quando si scorre il grafico, non mi piace.
Poi in generale una domanda, è possibile implementare la mia idea che ho descritto sopra?
Ma ho provato a tradurre Tempo, Prezzo con ChartTimePriceToXY in coordinate. Sono stato in grado di disegnare nel posto giusto, ma di nuovo, quando si scorre il grafico, sta in piedi, il che non funziona per me.
È la stessa storia con BitMap, perché è attaccata da coordinate, il che significa che tutte le BitMap staranno al loro posto quando si scorre il grafico, non mi piace.
Allora domanda generale, è possibile implementare la mia idea che ho descritto sopra?
Ciao a tutti, ho un problema con lstrcpyW () su MT5,
lstrcpyW () definito in winbase.mqh:string lstrcpyW(ushort &string1[],const string string2);
questo codice copia la stringa negli appunti, come posso cambiarlo per farlo funzionare
//+------------------------------------------------------------------+//| This piece of code will copy any text we want to the clipboard |//+------------------------------------------------------------------+/*
#import "kernel32.dll"
int GlobalAlloc(int Flags, int Size); long GlobalAlloc(uint flags,ulong bytes);
int GlobalLock(int hMem); long GlobalLock(HANDLE mem);
int GlobalUnlock(int hMem); int GlobalUnlock(HANDLE mem);
int GlobalFree(int hMem); long GlobalFree(HANDLE mem);
int lstrcpyW(int ptrhMem, string Text);
#import
#import "user32.dll"
int OpenClipboard(int hOwnerWindow); int OpenClipboard(HANDLE wnd_new_owner)
int EmptyClipboard(); int EmptyClipboard(void);
int CloseClipboard(); int CloseClipboard(void);
int SetClipboardData(int Format, int hMem); long SetClipboardData(uint format,HANDLE mem);
#import
*/#define GMEM_MOVEABLE 2#define CF_UNICODETEXT 13#include <WinAPI\winuser.mqh>
#include <WinAPI\winbase.mqh>
// Copies the specified text to the clipboard, returning true if successfulbool CopyTextToClipboard(string Text)
{
bool bReturnvalue = false;
long wnd_new_owner=0 ;
// Try grabbing ownership of the clipboard if (OpenClipboard(wnd_new_owner) != 0) {
// Try emptying the clipboardif (EmptyClipboard() != 0) {
// Try allocating a block of global memory to hold the text int lnString = StringLen(Text);
long hMem = GlobalAlloc(GMEM_MOVEABLE, lnString * 2 + 2);
if (hMem != 0) {
// Try locking the memory, so that we can copy into itlong ptrMem = GlobalLock(hMem);
if (ptrMem != 0) {
// Copy the string into the global memory
lstrcpyW(ptrMem, Text);
// Release ownership of the global memory (but don't discard it)
GlobalUnlock(hMem);
// Try setting the clipboard contents using the global memoryif (SetClipboardData(CF_UNICODETEXT, hMem) != 0) {
// Okay
bReturnvalue = true;
} else {
// Failed to set the clipboard using the global memory
GlobalFree(hMem);
}
} else {
// Meemory allocated but not locked
GlobalFree(hMem);
}
} else {
// Failed to allocate memory to hold string
}
} else {
// Failed to empty clipboard
}
// Always release the clipboard, even if the copy failed
CloseClipboard();
} else {
// Failed to open clipboard
}
return (bReturnvalue);
}
voidOnStart(){
bool re = false ;
re =CopyTextToClipboard("11111");
printf(re);
}
Cosa c'è di sbagliato in me? Come posso fare in modo che vengano considerati solo gli ordini aperti? Questo codice cattura anche gli ordini parzialmente chiusi, di cui non ho bisogno
Ho un oggettoOBJ_RECTANGLE collegato per prezzo e tempo, non per coordinate.
И? Questo è corretto. Quando si comprime la linea temporale, anche il rettangolo viene compresso. È logico? Stai lottando con la logica?
Tieni traccia dello spostamento nel grafico.
И? Proprio così. Quando si restringe la linea temporale, anche il rettangolo si restringe. È logico? Stai lottando con la logica?
Traccia lo spostamento nel grafico.
Per favore, ditemi da che parte scavare.
Per favore, ditemi da che parte andare.
Hai citato dal mio post esattamente quello che ti ho detto.
Ci sono diversi tipi di oggetti che potete usare per i vostri scopi. Quello che state usando ora non è sicuramente quello giusto.
Questo lascia diverse opzioni. E sono tutti qui, basta leggere e chiedere ciò che non si capisce:
Per favore, ditemi da che parte andare.
Gli oggetti che ho mostrato sopra e questo:
Gli oggetti che ho mostrato sopra e questo:
Non vedo un oggetto per risolvere il mio problema, e voi? A meno che OBJ_TEXT non supporti un frame!?
Non vedo un oggetto per risolvere il mio problema, e voi? A meno che OBJ_TEXT non supporti il frame!?
Rectangle_label è quello che mi serve.
Ma ho provato a tradurre Tempo, Prezzo con ChartTimePriceToXY in coordinate. Sono stato in grado di disegnare nel posto giusto, ma di nuovo, quando si scorre il grafico, sta in piedi, il che non funziona per me.
È la stessa storia con BitMap, perché è attaccata da coordinate, il che significa che tutte le BitMap staranno al loro posto quando si scorre il grafico, non mi piace.
Poi in generale una domanda, è possibile implementare la mia idea che ho descritto sopra?
Rectangle_label è quello che mi serve.
Ma ho provato a tradurre Tempo, Prezzo con ChartTimePriceToXY in coordinate. Sono stato in grado di disegnare nel posto giusto, ma di nuovo, quando si scorre il grafico, sta in piedi, il che non funziona per me.
È la stessa storia con BitMap, perché è attaccata da coordinate, il che significa che tutte le BitMap staranno al loro posto quando si scorre il grafico, non mi piace.
Allora domanda generale, è possibile implementare la mia idea che ho descritto sopra?
Sì.
Ti ho dato il link di aiuto per OnChartEvent()
Ciao a tutti, ho un problema con lstrcpyW () su MT5,
lstrcpyW () definito in winbase.mqh:string lstrcpyW(ushort &string1[],const string string2);
questo codice copia la stringa negli appunti, come posso cambiarlo per farlo funzionare