## 2.2文本
FLTK提供了幾種文本控件來顯示和接收文本信息
| Fl_Input | 輸入單行的文本 |
|:--- |:--- |
| Fl_Output | 輸出單行的文本 |
| Fl_Multiline_Input | 多行文本輸入框 |
| Fl_Multiline_Output | 多行文本輸出框 |
| Fl_Text_Display | 顯示多行文本控件 |
| Fl_Text_Editor | 多行文本編輯控件 |
| Fl_Help_View | 顯示HTML文本控件 |
Fl_Output and Fl_Multiline_Output 控件允許互相copy,但是不能改變
Value()函數用來設置和得到顯示的字符串
```
Fl_Input *input = new Fl_Input(x, y, width, height, "label");
input->value("Now is the time for all good men...");
```
這個字符串將被拷貝到該控件的存儲空間內,當用value()設置后
Fl_Text_Display and Fl_Text_Editor 用Fl_Text_Buffer來設置他的值,而不是一個簡單的字符串。
### Valuators
| Valuators | 用來顯示數字軌跡信息 |
|:--- |:--- |
| Fl_Counter | 帶有箭頭按鈕的控件顯示當前值 |
| Fl_Dial | 圓形手柄 |
| Fl_Roller | |
| Fl_Scrollbar | 滾動條控件 |
| Fl_Slider | 帶有手柄的滑塊 |
| Fl_Value_Slider | 顯示當前值的滑塊 |
value()函數得到和設置控件的當前值,minimum()和maximum()設置了控件的范圍
### 群Groups
Fl_Group控件被用來做一般的容器控件。除了單選按鈕群以外,還被用來形成windows,tabs,scrolled windows等控件。一下是FLTK提供的群類。
| Fl_Double_Window | 一個雙緩沖的窗口 |
|:--- |:--- |
| Fl_Gl_Window | 一個OpenGL的窗口類 |
| Fl_Group | 容器類的基類。能被用來包含所有的控件 |
| Fl_Pack | 將控件收集到一個群區域中 |
| Fl_Scroll | 滾動窗口區域 |
| Fl_Tabs | |
| Fl_Tile | |
| Fl_Window | |
### 設置控件的位置和大小
控件的位置和大小在你創建的時候就已經設置了,你可以通過x(),y(),w(),h(),來得到。
改變大小和位置用position(),resize(),size()函數。
```
button->position(x, y);
group->resize(x, y, width, height);
window->size(width, height);
```
- 第一章:FLTK編程模型
- 1.1FLTK功能簡介
- 1.2搭建FLTK開發環境
- 1.3FLTK構件簡介
- 1.4FLTK事件處理
- 1.5FLTK消息處理
- 1.6OpenGL編程
- 第二章:常用的控件和屬性
- 2.1按鈕
- 2.2文本
- 2.3顏色
- 2.4Box類型
- 第三章:FLTK的畫圖函數
- 3.1何時可以畫圖
- 3.2 FLTK的畫圖函數
- 3.3剪切
- 3.4顏色
- 3.5設置線條的屬性
- 3.6畫一般的圖形函數
- 3.7畫封閉的線,一次連接個頂點
- 3.8畫三邊形或四邊形,并填充內部
- 3.9復雜圖形函數
- 3.10字體
- 3.11覆蓋畫圖函數
- 第四章:在FLTK中自定義控件
- 4.1定制圖形控件說明
- 4.2如何開發一個控件的子類
- 4.3處理事件
- 4.4畫控件