Come faccio a determinare se il pulsante di scorrimento è premuto o depresso e, in tal caso, premerlo! - pagina 5
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
int max = SendMessage ( hwndTaskbar, TB_BUTTONCOUNT, 0, 0);
Per favore ditemi dove vedere tutti i valori delle costanti come: TB_BUTTONCOUNT, TB_ISBUTTONPRESSED ?!
Voglio determinare il pulsante e il suo stato!
Quale comando della barra degli strumenti può essere usato per scorrere i pulsanti e trovare quello giusto?
Qualcuno l'ha fatto?
Il descrittore della finestra grafica è stato trovato:
int deinit() {ObjectsDeleteAll();Comment ("");}int start() { ObjectsDeleteAll(); Comment (""); int hwnd = GetAncestor (WindowHandle(Symbol(),Period()),2); //дескриптор основного окна терминала int temp = GetWindow (hwnd, 5); int Count = GetWindowTextLengthA (temp); GetWindowTextA (temp, Name, Count+1); if (Name != "Стандартная" || Name == "Графики" || Name == "Графические инструменты") { for (int i=0;i<10;i++) { temp = GetWindow (temp, 2); if (temp == 0) break; Count = GetWindowTextLengthA (temp); GetWindowTextA (temp, Name, Count+1); if (Name == "Стандартная" || Name == "Графики" || Name == "Графические инструменты") {hg = temp; break;} } } else hg = temp; int h = GetWindow (hg, 5); Count = GetWindowTextLengthA (h); GetWindowTextA (h, Name, Count+1); if (Name != "Графики") { for (i=0;i<10;i++) { h = GetWindow (h, 2); if (h == 0) break; Count = GetWindowTextLengthA (h); GetWindowTextA (h, Name, Count+1); if (Name == "Графики") break; } } Print (DecToHex(h,8)); while (!IsStopped()) { GetWindowRect (h,rect); GetCursorPos (Pos); X = Pos[0] - rect[0]; Y = Pos[1] - rect[1]; Comment ("X= ",X,"\n","Y= ",Y); Sleep(100); } return(0); }string DecToHex (int n, int dig) { string s[], r=""; string Sym[16] = {"0","1","2","3","4","5","6","7","8","9","A","B","C","D","E","F"}; ArrayResize (s,dig); for (int i=0; i<dig; i++) s[i]="0"; i = dig-1; while (n != 0) {s[i] = Sym[n%16]; n = n>>4; i--; } for (i=0; i<dig; i++) r=r+s[i]; return (r); }Non capisco... Per quale motivo?! Sono molto sorpreso. Hai guardato la mia intestazione? Non secondo il codice.
Qualsiasi comando da un grafico è una funzione, una linea di codice.
Non capisco... Per quale motivo?! Sono molto sorpreso. Hai guardato la mia intestazione? Non secondo il codice.
Qualsiasi comando da un grafico è una funzione, una linea di codice.
OK, cercherò altrove una soluzione a questa domanda.
Ci scusiamo per l'inconveniente.
OK, cercherò altrove una soluzione a questo problema.
Mi dispiace per l'inconveniente...
Lì, nell'intestazione, c'è un codice e un esempio.
Copia qui quello che consideri un esempio per questa domanda?!
Ho trovato solo questo:
// 3.1.1 La funzione attiva/disattiva lo scorrimento automatico del grafico specificato.
void ServiceAutoScroll(int hwndChart); // descrittore di sistema della finestra del grafico, su cui l'autoscorrimento è disabilitato.
//=====================================================================================================================================================================
// 3.1.2. La funzione attiva/disattiva lo spostamento del grafico specificato. Se ha successo, il metodo restituisce TRUE, altrimenti - FALSE.
bool ServiceShift(int hwndChart); // descrittore di sistema della finestra del grafico, su cui lo spostamento è abilitato/disabilitato.
Ma non ne hai bisogno!
Copia qui quello che pensi sia un esempio sull'argomento?!
Se questa funzione qui, ho ancora bisogno dei suoi interni ...
// 3.2.1 La funzione restituisce lo stato di scorrimento automatico del grafico specificato. Se ha successo, la funzione restituisce TRUE, altrimenti FALSE.
bool ServiceGetAutoScroll(int hwndChart); // descrittore di sistema della finestra del grafico, da cui viene restituito lo stato di scorrimento automatico.
Copia qui quello che pensi sia un esempio sull'argomento?!
Ho trovato solo questo:
// 3.1.1. La funzione attiva/disattiva lo scorrimento automatico del grafico specificato.
void ServiceAutoScroll(int hwndChart); // Il descrittore di sistema della finestra del grafico, su cui l'autoscorrimento è disabilitato.
// 3.1.2. la funzione attiva/disattiva lo spostamento del grafico specificato. Il metodo restituisce TRUE se ha successo, altrimenti FALSE.
bool ServiceShift(int hwndChart); // descrittore di sistema della finestra del grafico, su cui lo spostamento è abilitato/disabilitato.
Ma non ne hai bisogno!
Non stavo parlando della biblioteca. Ma se si tratta di una biblioteca, c'è una funzione:
Ho scritto sopra su WinUser32.mqh. I codici di controllo sono lì.