Как поменять текст в виджете класса Fl_Box?
можно ли поменять текст в виджете класса Fl_Box? если да то как ?
Ответы (2 шт):
можно ли поменять текст в виджете класса Fl_Box?
На странице документации для версии FLTK 1.5.0 https://fltk.gitlab.io/fltk/classFl__Box.html не обнаружил метода, который изменяет текст у надписи уже у созданного экземпляра. Выводы:
- зависит от используемой версии библиотеки
- в FLTK 1.5.0 только при создании, через конструктор класса можно.
- возможно, унаследоваться от этого класса и модифицировать поведение.
что мне делать если мне надо вставить цифры из переменой типа double а там требуется тип const char*
// В стиле C:
#include <cstdio>
...
char bufferChars[32];
snprintf(bufChars, sizeof(bufChars), "%g", doubleVar);
// использовать указатель bufChars там где надо, в пределах области видимости
// В стиле C++11:
#include <string>
...
// выделением памяти для символов занимается класс std::string
std::string varString = std::to_string(doubleVar);
// использовать в качестве указателя const char* выражение varString.c_str()
Класс Fl_Box является производным от Fl_Widget
В самом классе нужного метода нет, но есть в родительском.
Он имеет сигнатуру
void Fl_Widget::label(const char* text);
и является публичным.
Можно предположить, что этот метод и является необходимым автору.
box->label(text);
Преобразование различных типов к const char* рассматривать не будем.