Создать окошко, закрасить его, и цветным шрифтом вывести в нём сообщение - C (СИ)
Формулировка задачи:
Не понимаю как использовать window(x1, y1, x2, y2) и функции для закраски тескста и фона.
Дайте какойнибудь простой пример пожалуйста.
---------------------------------------------------------------
выдаёт clrscr, window не найдены в скопе
#include <stdlib.h>
#include <conio.h>
main()
{
clrscr;
window(5, 10, 20, 30); textbackground(white); ckrscr;
printf("hello");
getch();
}Решение задачи: «Создать окошко, закрасить его, и цветным шрифтом вывести в нём сообщение»
textual
Листинг программы
#include <gtk/gtk.h>
int main(int argc, char ** argv) {
GtkWidget * win, * lbl;
GdkColor bg, fg;
PangoFontDescription * df;
gtk_init(&argc, &argv);
gdk_color_parse("blue", &bg);
gdk_color_parse("yellow", &fg);
df = pango_font_description_from_string("Monospace");
pango_font_description_set_size(df, 20 * PANGO_SCALE);
win = gtk_window_new(GTK_WINDOW_TOPLEVEL);
lbl = gtk_label_new("Hello Colored World!");
gtk_widget_modify_bg(win, GTK_STATE_NORMAL, &bg);
gtk_widget_modify_fg(lbl, GTK_STATE_NORMAL, &fg);
gtk_widget_modify_font(lbl, df);
gtk_container_add(GTK_CONTAINER(win), lbl);
g_signal_connect(G_OBJECT(win), "destroy", G_CALLBACK(gtk_main_quit), NULL);
gtk_widget_set_size_request(win, 400, 250);
gtk_widget_show_all(win);
gtk_main();
return 0;
}
Объяснение кода листинга программы
- Подключение необходимых заголовочных файлов для работы с GTK
- Инициализация GTK
- Задание начального цвета фона (синий) и цвета шрифта (желтый)
- Создание объекта PangoFontDescription для задания шрифта
- Установка размера шрифта равным 20 пунктам
- Создание главного окна приложения
- Создание метки для вывода сообщения
- Изменение цвета фона главного окна на синий
- Изменение цвета шрифта метки на желтый
- Изменение шрифта метки на
Monospace - Добавление метки в главное окно
- Подключение сигнала
destroyдля главного окна, чтобы закрыть приложение при нажатии на кнопкуЗакрыть - Установка размера главного окна 400x250 пикселей
- Отображение главного окна
- Запуск основного цикла GTK
- Возврат 0, чтобы указать успешный конец работы программы
- ...