Tartalomjegyzék

< Pascal

Gtk

Telepítés

Windowson automatikusan települ a FreePascal-al a GTK-is.

Debian GNU/Linuxon (a uses gtk1-hez):

apt-get install libgtk1.2-dev

Debian GNU/Linuxon (a uses glib-hez):

apt-get install libglib-dev

Debian GNU/Linuxon (a uses gtk2-höz):

apt-get install libgtk2.0-dev

Debian GNU/Linuxon (a uses glib-hez):

apt-get install libglib2.0-dev

Gtk2 Ablak

main.pas
uses Gtk2;
var
    FoAblak : pGtkWidget;
begin
    gtk_init(@argc, @argv);
 
    FoAblak := gtk_window_new(GTK_WINDOW_TOPLEVEL);
    gtk_widget_show(FoAblak);
    gtk_main();
end.

Egy gomb kihelyezés, amelyre a program kilép:

main.pas
program ex2;
 
{ $mode objfpc }
 
uses
    glib2, gtk2;
 
procedure destroy (widget : pGtkWidget ; data : pgpointer ) ; cdecl ;
begin
    gtk_main_quit();
end;
 
var
    window : PGtkWidget ;
    button : PGtkWidget ;
begin
    gtk_init(@argc,@argv);
    window := gtk_window_new(GTK_WINDOW_TOPLEVEL);
    button := gtk_button_new_with_label('Klikkelj ide');
    gtk_container_set_border_width(GTK_CONTAINER(Window) , 5 ) ;
    gtk_container_add(GTK_Container(window) , button) ;
 
    gtk_signal_connect(PGTKOBJECT(window) , 'destroy' ,
                  GTK_SIGNAL_FUNC(@destroy),NULL);
    gtk_signal_connect(PGTKOBJECT(button) , 'clicked' ,
                  GTK_SIGNAL_FUNC(@destroy),NULL);
 
    gtk_widget_show(button);
    gtk_widget_show(window) ;
    gtk_main() ;
end.

Külső linkek