|
|
��� �������� �������� �� ��������� ������: English Castellano ChineseGB Deutsch Francais Italiano Nederlands Russian Turkce Polish |
����� Özcan Güngör <ozcangungor(at)netscape.net> �� ������: ��������� Linux � 1997.�������,�������� � ���������� ����. ��� �� ��������, ������� ��� ��������. ������� �� �������: ���� ����� <deshko_deshko(at)mail.ru> ����������: |
���������������� ������������ ����������������� ���������� � �������������� GTK.������:
� ���� ����� ������ �� ������, ��� ��������� ��������� ��� � ������� GTK.� �� ����, ��������� ��������� ��� �����.����� ������ ��� ������ ��� ���������� ��������� ������ � ����� ���������������� C:
|
GTK(GIMP Toolkit) -- ��� ���������� ��� �������� ���.���������� �������� ��� GPL ���������.��������� ���� �����������, �� ������ ��������� ��������� ��� ��������� ��������� ����, ��� ������������ � ���������.
���������� ���������� GIMP toolkit (��������������), ��� ��� ���������� ���� ������� ��� ���������� GIMP(General Image Manipulation Program - �������� ��������� ��� ��������������� �������������).������ GTK, ��� ���:
GTK ������������� ��������-��������������� ��������� ��� ���������������� ����������.���������� �� C , ��� ���������� ���� ������� � ������� ��������� ������.
��� ���� ����� �������������� GTK ��������� , ��� ����� �������� gcc �� ������������� GTK ��������� � �� �� ������������.��� ��� "�����" ������� gtk-config
# gtk-config --cflags --libs����� ���� ������� ����� �� ���������(������� �� �������):
-I/opt/gnome/include/gtk-1.2 -I/opt/gnome/include/glib-1.2 -I/opt/gnome/lib/glib /include -I/usr/X11R6/include -L/opt/gnome/lib -L/usr/X11R6/lib -lgtk -lgdk -rdynamic -lgmodule -lglib -ldl -l Xext -lX11 -lm���������� ���� ����������:
-l ����������: ����� ���������� � ���� lib����������.a � ���������������� ���������(path-�����).��� ���������� GTK ��������� ���������� hello.c ����� ������������ ��������� �������:
gcc -o hello hello.c `gtk-config --cflags --libs`
������ ����� ��������� -o --��� ��� ������������� ���������.
��������������, ��� � ����� ������� ���������� GTK.��������� ������ GTK ����� ���� ������� �� ftp.gtk.org.
������� ������� ���� ������ ���������.��� ������� ������ ���� �������� 200 �� 200 ��������.
#include <gtk/gtk.h> int main( int argc, char *argv[] ) { GtkWidget *window; gtk_init (&argc, &argv); window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_widget_show (window); gtk_main (); return(0); }
GtkWidget - ��� ���������� ��� ����������� ��������� ����������� ����� ��� ����,������,�����...� ���� ������� ���� ���������� ��������� �������:
GtkWidget *window;void gtk_init(int *argc,char ***argv) �������������� �������������� � ��������� ��������� ��������� ������.��� ������� ������ ���� ������������ ����� ����������� ���������.
GtkWidget *gtk_window_new(GtkWindowType windowtype) ������� ����� ����.���� ����� ����:
void gtk_widget_show(GtkWidget *widget) ������������ ��� ���� ,����� ��������� ��������� ��������� � ����.������ ������ �������������� ����� ����������� ���������� � ��������� ��� ����������.
void gtk_main(void) �������������� ���� � ��� ���������� � ��������� �� ������.������� ������ �������������� � ����� GTK ���������.
������� ���������� ��������� �������� ���� ����� ��� ���������,������,�������...
void gtk_window_set_title(GtkWindow *window,const gchar *title) ������������ ��� ��������� ��� ��������� ��������� ���� window.������ �������� ���� ������� ����� ��� GtkWindow.�� ����������window ����� ��� GtkWidget . ��� ���������� �� ����� ������������� �� ����.���� ���������������� ��������� � �������� , ����� �� �����������������. ��� ����� ������������ GTK_WINDOW(GtkWidget *widget). ������ �������� title ����� ��� gchar. ��� gchar ��������� � ���������� glib � �������� ����� �� ����� ��� � ��� char.
void gtk_window_set_default_size(GtkWindow *window, gint width, gint height) ������������� ������ window. .��� � gchar , gint ��������� � glib} � ������������ int.
�������void gtk_window_set_position(GtkWindow *window, GtkWindowPosition position)
������������� ��������� window.position ����� ����:��� ������:
#include <gtk/gtk.h> int main( int argc, char *argv[] ) { GtkWidget *window; gtk_init (&argc, &argv); window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_title(GTK_WINDOW(window),"Ýlk Program"); gtk_window_set_position(GTK_WINDOW(window),GTK_WIN_POS_CENTER); gtk_window_set_default_size(GTK_WINDOW(window),300,300); gtk_widget_show (window); gtk_main (); return(0); }
� ���, ��� ����� ������������ ���� � ����������, �������� �� ������ �������� �� ������ ����������.��� ����� ����������� GTK �������:
guint gtk_signal_connect_object(GtkObject *object,const gchar *name,GtkSignalFu nc func,GtkObject *slot_object);
object - ��� ��������, ������� ��������� ������.��������, ���� �� ������ ������ ���� �� ������ ������, �� object ����� �������. name-��� ��� ������� � ����� ���� ���������:
func - ��� ��� ������� , ������� ����� ������� ����� ���������� �������.��������:
#include <gtk/gtk.h> void close( GtkWidget *widget,gpointer *data) { gtk_main_quit(); } int main( int argc,char *argv[] ) { GtkWidget *window; gtk_init (&argc, &argv); window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_signal_connect (GTK_OBJECT (window), "destroy", GTK_SIGNAL_FUNC (close), NULL); gtk_widget_show (window); gtk_main (); return(0); }��������
gtk_signal_connect (GTK_OBJECT (window), "destroy",GTK_SIGNAL_FUNC (close), NULL)
������ �� �������� destroy, ������������ � �����.����� ���� �������� ������� , �� ���������� ������� close.������� close �������� gtk_main_quit() � ��������� ���������� ����������.������ � �������� � �������� ����� ��������� �����...
������� ������ ��� ������� ������������ ��� ���������� ���� ������ ��� �� �������.� GTK ���������� ���������� ��� ���� �������� ������:
������ ������� ������� ������ ��� ����� (�� ��� ������ �� �������� ).������ ������� ������ � ������(�� ��� �������� ������ label .
��� �� ���������� ����� �������:
void gtk_container_add(GtkContainer *container,GtkWidget *widget)
��������� ��� �������,����� ������� ������ (� ����� �� ����� ��������� ) � ���� ( ��� ����� ����������). � ��������� ������� ����������� �������� ���� � ����������� ����������� - ������.� ������ ����������� �� ������ ������� �����.
������� , ��� ����� ����� � ������ ��� ���� �� ��� ������ .��� ���� ���� ����� �� ���� ������������ ������� gtk_signal_connect.� ������� ���� ������� ����� ������� ������ � ����� ������� ����������� ���������������� ������.��������:
#include <gtk/gtk.h> void close( GtkWidget *widget,gpointer *data) { gtk_main_quit(); } void clicked(GtkWidget *widget,gpointer *data) { g_print("Button Clicked\n"); } int main( int argc,char *argv[] ) { GtkWidget *window,*button; gtk_init (&argc, &argv); window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_signal_connect (GTK_OBJECT (window), "destroy", GTK_SIGNAL_FUNC (close), NULL); button=gtk_button_new_with_label("Button"); gtk_container_add(GTK_CONTAINER(window),button); gtk_signal_connect(GTK_OBJECT(button),"clicked", GTK_SIGNAL_FUNC(clicked),NULL); gtk_widget_show(button); gtk_widget_show(window); gtk_main (); return(0); }
|
Webpages maintained by the LinuxFocus Editor team
© Özcan Güngör, FDL LinuxFocus.org |
Translation information:
|
2003-08-06, generated by lfparser version 2.42