Ubuntu上实现Fortran图形界面的常见方法及步骤
在Ubuntu上开发Fortran图形界面前,需安装以下基础工具和图形库:
sudo apt update && sudo apt install gfortran
sudo apt install libgtk-3-dev
sudo apt install libfltk1.3-dev
sudo apt install geany
GTK+是Linux下最常用的图形库之一,通过gtk-fortran
绑定可实现Fortran调用。以下是具体步骤:
sudo apt install libgtk-fortran-dev
hello_gtk.f90
,使用GTK+创建窗口和按钮:program hello_gtk use gtk implicit none type(GtkWindow) :: window type(GtkButton) :: button integer :: status ! 初始化GTK call gtk_init() ! 创建顶层窗口 window = gtk_window_new(GTK_WINDOW_TOPLEVEL) call gtk_window_set_title(window, "GTK+ Fortran Demo") call gtk_window_set_default_size(window, 300, 200) ! 创建按钮 button = gtk_button_new_with_label("Click Me!") call gtk_container_add(GTK_CONTAINER(window), button) ! 连接按钮点击事件(退出程序) call g_signal_connect(button, "clicked", c_funloc(gtk_main_quit), C_NULL_PTR) ! 显示所有控件 call gtk_widget_show_all(window) ! 进入主事件循环 call gtk_main() end program hello_gtk
gfortran -o hello_gtk hello_gtk.f90 `pkg-config --cflags --libs gtk+-3.0` ./hello_gtk
运行后会弹出一个包含“Click Me!”按钮的窗口,点击按钮可关闭程序。FLTK(Fast Light Toolkit)以轻量和易用著称,适合快速开发简单界面:
sudo apt install libfltk1.3-dev
simple_gui.f90
,使用FLTK创建窗口、文本框和按钮:program simple_gui use fltk implicit none integer :: win, button, input ! 初始化FLTK call fl_open_display("") call fl_initialize() ! 创建窗口 win = fl_open_window(300, 200, "FLTK Fortran Demo") ! 创建文本框(用于输入) input = fl_add_input(50, 50, 200, 30, "Enter text:") ! 创建按钮(点击显示输入内容) button = fl_add_button(100, 100, 100, 30, "Show") call fl_set_button_callback(button, c_funloc(button_callback), input) ! 显示窗口 call fl_show_widget(win) ! 进入事件循环 do while (fl_check_event() /= -1) ! 事件处理由回调函数完成 end do ! 关闭窗口 call fl_close_display() end program simple_gui ! 按钮回调函数:显示输入的文本 subroutine button_callback(ptr) use fltk implicit none integer, intent(in) :: ptr character(len=100) :: text ! 获取文本框内容 text = trim(fl_get_input(ptr)) if (text /= "") then call fl_message("You entered: " // trim(text)) end if end subroutine button_callback
gfortran -o simple_gui simple_gui.f90 -lfltk ./simple_gui
运行后会弹出窗口,输入文本并点击“Show”按钮,会弹出消息框显示输入内容。sudo apt install libiup-dev
libwxgtk3.0-fortran-dev
),适合复杂界面。安装命令:sudo apt install libwxgtk3.0-dev libwxgtk3.0-fortran-dev
iso_c_binding
模块简化操作。通过以上方法,可在Ubuntu上实现Fortran图形界面,满足科学计算、工程应用等场景的需求。