Pregunta

Quiero crear mediante programación un NSTextView.¿Cómo puedo determinar la correcta altura del bastidor de manera que la vista se muestra una línea de texto en el valor predeterminado actual de la fuente?

¿Fue útil?

Solución

El NSFont clase tiene un método que puede dar el tamaño de un rectángulo que incluya una específica atribuida cadena.Obtener el tipo de letra utilizado por su vista de texto, crear una cadena que sirve como un ejemplo de lo que será en la vista de texto, y el uso que informar a su marco de altura.(La altura del bastidor será necesario un número de puntos mayor que el rectángulo de la cadena se muestran.)

Alternativamente, usted puede obtener las diferentes métricas de la fuente y el intento de calcular un marco razonable de que.Que podría o no de trabajo;por ejemplo, una fuente como la de Apple Cancillería tiene una gran cantidad de variación en función de los pictogramas que se están representando, donde están en una palabra, y así sucesivamente;No sé que se puede calcular cuál es el tamaño necesario sería por adelantado sin saber exactamente lo que se va a procesar.

Otros consejos

Sería más normal el uso de un NSTextField de un NSTextView para una sola línea de texto.

Con NSTextField, solo haz lo siguiente:

[textField setFont:myFont];
[textField sizeToFit];

Ah, y no hay ninguna integrada en la corriente de fuente predeterminada'.Si una aplicación tiene un concepto, es necesario realizar un seguimiento de ella misma.La fuente del panel no lee ni escribe para algo global, que se utiliza para operar en determinados objetos de texto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top