Cosa sono tutte queste sciocchezze sul carattere tab? - pagina 3

 
Meat:

Non scrivere sciocchezze! Farlo attraverso gli oggetti è farlo attraverso il culo. Bisogna creare un paio di centinaia di oggetti solo per visualizzare del testo sullo schermo, mentre c'è una funzione speciale chiamata Comment per visualizzare questo testo (sottolineo: TESTO, non etichette, per cui l'oggetto Label è progettato). Un tale ammasso di oggetti, oltre ad essere scomodo, sprecherà risorse, specialmente quando Expert Advisor è in esecuzione su diversi grafici. Pertanto, pensate un po' prima di dare i vostri consigli qui. In generale, vorrei sentire una risposta dagli sviluppatori. La mia domanda era rivolta a loro.

Per quanto riguarda i "componenti grafici", non sono sicuro di cosa intendiate con questo termine. Gli editor di testo sono programmi, non componenti grafici. Un'altra cosa è che se il programma usa un componente che supporta l'output multilinea, la tabulazione viene usata anche lì. Per esempio, l'oggetto Memo.


Tutti scrivono cose stupide. Ma alcune persone non lo capiscono. Non sto parlando di Sergeev, sto parlando di te.
 

Cosa vede esattamente di sciocco qui? Ho anche sottovalutato un paio di centinaia di oggetti, ho 10-15 colonne e 20-30 righe. In totale, ho bisogno di 200-400 oggetti su un grafico. E ci possono essere molti di questi grafici aperti.

 
Meat:

Cosa vede esattamente come follia qui?


La follia è non essere capaci o disposti ad ascoltare le esperienze degli altri. Non più di
 
Vinin:

La follia è non essere capaci o disposti ad ascoltare le esperienze degli altri. Non più di questo.


Tutto sta nel modo in cui questa esperienza viene presentata, e se è rilevante. Avete letto che qualche post prima questa persona suggeriva con condiscendenza di sostituire le tabulazioni con 4 spazi. Il che dimostra che chiaramente non capisce affatto cosa sia la tabulazione. E poi si è ricordato dei font monospace, mentre non è rilevante per la funzione in questione. Quindi dove vedi l'esperienza qui?

Altrimenti, sono felice solo se qualcuno condivide la sua esperienza.

 

"Vuoi guidare o vuoi guidare?"

Date un'occhiata qui https://www.mql5.com/ru/forum/122586 . Forse troverai la tua soluzione.

 

sergeev: Мы же вроде все здесь не глупые и понимаем что в Comment не моноширный шрифт.

Carne : Non essere sciocco!

Ok, stavo esagerando riguardo a quelli non stupidi, mi rimangio tutto, non era riferito a te.

Carne : Fare attraverso gli oggetti è fare attraverso il culo...

Non essere timido, qui siamo tutti da soli.

Solo per ottenere un paio di centinaia di oggetti solo per visualizzare il testo sullo schermo...

Non esagerare. Sta dicendo che può inserire 100 righe di testo di commento sul suo schermo? Oh, ne dubito!

Tutto quello che dovete fare è:

- è visualizzare il testo riga per riga in formato oggetto etichetta.
- utilizzare un carattere monospaziato in quelle etichette
- sostituire le tabulazioni con spazi.

Un tale ammasso di oggetti, oltre ad essere scomodo, consumerà anche risorse,

Pensi che la funzione Commento funzioni in modo parsimonioso? Mangia risorse non meno dell'output dell'oggetto. Perché aggiorna il grafico. E questa non è una piccola parte. Puoi giocare a tuo piacimento con il calcolo del tempo.

PS (in modo condiscendente).

Grazie non è necessario. Tabs in Comment (specialmente in MT4) si aspetta molto tempo.
Quindi, se ne hai davvero bisogno, seguirai il mio consiglio.
Chi ha il desiderio - cerca le opportunità, chi non ce l'ha - cerca una ragione. amen.

 
sergeev:


Chi vuole, cerca le opportunità, chi non vuole, cerca una ragione.

Chi cerca una ragione sta essenzialmente cercando qualcuno da incolpare. Non è affatto una soluzione. E questo non è affatto efficace.

// Lo ripeterò di tanto in tanto. Ancora e ancora. Puramente per migliorare l'atmosfera del forum. Sembra che alcune persone ci stiano prendendo la mano...

 
Che mucchio di sciocchezze - non è nemmeno luna piena, ma improvvisamente ci sono due aggravanti sul forum....
 
Meat:


È tutta una questione di come questa esperienza viene presentata, e se è rilevante. Avete letto come pochi post prima quest'uomo ha proposto con condiscendenza di sostituire la tabulazione con 4 spazi. Il che dimostra che chiaramente non capisce affatto cosa sia la tabulazione. E poi si è ricordato dei font monospace, mentre non è rilevante per la funzione in questione. Quindi dove vedi l'esperienza qui?

Altrimenti, sono felice che qualcuno condivida davvero la sua esperienza.


La pazienza e il lavoro ti porteranno lì! :)

È sufficiente farlo una volta come funzione e usarlo quando serve.

 

Il fatto che al momento non ci siano altre opzioni oltre all'etichetta, io stesso lo capisco molto bene. Non ho fatto la domanda "come faccio a fare le schede?", ma "perché gli sviluppatori non lo implementano in Comment?", ma non ho avuto risposta da loro. Invece ho ricevuto un mucchio di suggerimenti come: "A cosa ti serve un'arancia? Mangiare una mela.

Ma ho un'altra idea per i font non monospaziati, sia Comment che la maggior parte dei font Label. Dobbiamo in qualche modo ottenere la larghezza di ogni carattere in quel font. Poi si può facilmente calcolare il numero di spazi necessari per regolare le colonne allo stesso livello. Naturalmente l'adattamento non sarà esatto, con un errore di 1-3 pixel, ma va bene così. Se qualcuno ha qualche consiglio su come scoprire la larghezza dei caratteri, gliene sarei molto grato. E in generale, che carattere si usa in Comment? Sospetto Arial, ma vorrei saperlo in modo specifico.

Ho provato a trovare una soluzione usando le funzioni winapi, ho trovato una funzione GetTextExtentPoint32, dà la larghezza di qualsiasi stringa di testo in pixel, e ci sono funzioni simili per la larghezza di caratteri specifici, la sostanza è la stessa. Sembra che vada bene, ma la larghezza risultante si riferisce al font System. Per quanto ho capito, questo font è impostato di default per il contesto corrente del dispositivo di visualizzazione (DC) della nostra finestra, in cui viene visualizzato il testo (l'ho preimpostato con la funzione GetDC). Ma il testo in Comment è chiaramente visualizzato in un carattere diverso, con dimensioni dei caratteri diverse. Questo si nota, per esempio, nelle proporzioni della larghezza delle lettere "i" e "w". In generale, la domanda è se si può in qualche modo impostare un font diverso per il DC corrente, o creare il proprio DC con un font specifico? Forse qualcuno si è imbattuto in questo. Ho cercato dappertutto, ma non l'ho capito.