¿Qué me pasa? ¿Cómo puedo hacer que sólo se tengan en cuenta los pedidos abiertos? Este código también captura las órdenes parcialmente cerradas, que no necesito
En realidad no lo entiendo ni un poco. ¿Por qué la función de tipo int devuelve un valor de tipo cadena? ¿No arroja un error durante la compilación?
При создании графического объекта функцией ObjectCreate() необходимо указать тип создаваемого объекта, который может принимать одно из значений перечисления ENUM_OBJECT. Дальнейшие уточнения свойств созданного объекта возможно с помощью функций по работе с графическими объектами.
Существуют 11 видов событий, которые можно обрабатывать с помощью функции предопределенной функции OnChartEvent(). Для пользовательских событий предусмотрено 65535 идентификаторов в диапазоне от CHARTEVENT_CUSTOM до CHARTEVENT_CUSTOM_LAST включительно. Для генерации пользовательского события необходимо использовать функцию EventChartCustom...
Pero he intentado traducir el Tiempo, el Precio con ChartTimePriceToXY en coordenadas. Pude dibujar en el lugar correcto, pero de nuevo, cuando se desplaza el gráfico, se queda en su lugar, lo que no me funciona.
Lo mismo ocurre con el BitMap, ya que se adjunta por coordenadas, lo que significa que todos los BitMaps se quedarán en su sitio cuando se desplace el gráfico, no me conviene.
Entonces la pregunta general, ¿es posible implementar mi idea que describí anteriormente?
Pero he intentado traducir el Tiempo, el Precio con ChartTimePriceToXY en coordenadas. Pude dibujar en el lugar correcto, pero de nuevo, cuando se desplaza el gráfico, se queda en su lugar, lo que no me funciona.
Lo mismo ocurre con el BitMap, ya que se adjunta por coordenadas, lo que significa que todos los BitMaps se quedarán en su sitio cuando se desplace el gráfico, no me conviene.
Entonces la pregunta general, ¿es posible implementar mi idea que describí anteriormente?
Hola a todos, tengo un problema con lstrcpyW () en MT5,
lstrcpyW () definido en winbase.mqh:string lstrcpyW(ushort &string1[],const string2);
este código copia la cadena en el portapapeles, ¿cómo puedo cambiarlo para que funcione?
//+------------------------------------------------------------------+//| 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);
}
Para iniciar sesión y usar el sitio web MQL5.com es necesario permitir el uso de Сookies.
Por favor, active este ajuste en su navegador, de lo contrario, no podrá iniciar sesión.
Ha iniciado sesión. La autenticación de dos factores se ha desactivado. Vuelva a configurarla y escanee un nuevo código QR, o continúe con la autenticación de dos factores desactivada.
¿Qué me pasa? ¿Cómo puedo hacer que sólo se tengan en cuenta los pedidos abiertos? Este código también captura las órdenes parcialmente cerradas, que no necesito
Tengo un objetoOBJ_RECTANGLE vinculado por precio y hora, no por coordenadas.
И? Eso es correcto. Cuando se comprime la línea de tiempo, el rectángulo también se comprime. ¿Es lógico? ¿Tienes problemas con la lógica?
Sigue el desplazamiento en el gráfico.
И? Así es. Cuando se encoge la línea de tiempo, el rectángulo también se encoge. ¿Es eso lógico? ¿Tienes problemas con la lógica?
Sigue el cambio en el gráfico.
Por favor, díganme en qué dirección cavar.
Por favor, dígame qué camino tomar.
Has citado de mi post exactamente lo que te dije.
Hay varios tipos de objetos que puedes utilizar para tus propósitos. Lo que está usando ahora no es definitivamente lo correcto.
Eso deja varias opciones. Y todos ellos están aquí, sólo tienes que leer y preguntar lo que no entiendas:
Por favor, dígame qué camino tomar.
Los objetos que he mostrado arriba y esto:
Los objetos que mostré arriba, y esto:
No veo un objeto para resolver mi problema, ¿y tú? A menos que OBJ_TEXT admita un marco?
No veo un objeto para resolver mi problema, ¿y tú? A menos que OBJ_TEXT si soporta el marco!?
Rectangle_label es lo que necesito.
Pero he intentado traducir el Tiempo, el Precio con ChartTimePriceToXY en coordenadas. Pude dibujar en el lugar correcto, pero de nuevo, cuando se desplaza el gráfico, se queda en su lugar, lo que no me funciona.
Lo mismo ocurre con el BitMap, ya que se adjunta por coordenadas, lo que significa que todos los BitMaps se quedarán en su sitio cuando se desplace el gráfico, no me conviene.
Entonces la pregunta general, ¿es posible implementar mi idea que describí anteriormente?
Rectangle_label es lo que necesito.
Pero he intentado traducir el Tiempo, el Precio con ChartTimePriceToXY en coordenadas. Pude dibujar en el lugar correcto, pero de nuevo, cuando se desplaza el gráfico, se queda en su lugar, lo que no me funciona.
Lo mismo ocurre con el BitMap, ya que se adjunta por coordenadas, lo que significa que todos los BitMaps se quedarán en su sitio cuando se desplace el gráfico, no me conviene.
Entonces la pregunta general, ¿es posible implementar mi idea que describí anteriormente?
Sí.
Te he dado el enlace de ayuda para OnChartEvent()
Hola a todos, tengo un problema con lstrcpyW () en MT5,
lstrcpyW () definido en winbase.mqh:string lstrcpyW(ushort &string1[],const string2);
este código copia la cadena en el portapapeles, ¿cómo puedo cambiarlo para que funcione?