linux显示编程语言语句,linux – 如何使用Glade / GtkD和D编程语言显示Hello World

>安装在Mac,Linux或Windows计算机上编译D语言的DMD编译器.您可以获得有关此here的更多信息.

>在Mac,Linux或Windows计算机上安装Glade界面设计器.使用sudo apt-get install glade可以很容易地在Ubuntu Linux上获得Glade,但是有关在各种其他平台上安装的更多信息是here.

>在Mac,Linux或Windows计算机上安装GTKd.这并不容易.您需要从gtkd.org开始文档,然后在DLang.org Learn forum中进行交互以获得更多帮助.

>打开Glade并创建一个新窗口,上面有一个标签,上面写着Hello World.

Note that the tools palette in Glade shows a Window widget and an ApplicationWindow widget. Since we’re not drawing any menus,ensure you’re using the Window widget instead of the ApplicationWidget. If you fail to do that,you’ll get warnings when running the application,talking about some missing menu calls.

将其保存为hello.glade.

>在文本编辑器中打开hello.glade文件,查找与此类似的行:

< object class =“GtkWindow”id =“window1”>

写下一张id属性的纸.

>在与此hello.glade文件相同的目录中创建一个hello.d脚本,并更改​​以下内容,将window1更改为您之前记下的ID.

import gtk.Builder;

import gtk.Main;

import gtk.Widget;

import gtk.Window;

import std.stdio;

int main (string[] args)

{

Main.init(args);

Builder b = new Builder();

b.addFromFile("hello.glade");

Window w = cast(Window)b.getObject("window1");

w.addOnHide( delegate void(Widget aux){ Main.quit(); } );

w.showAll();

Main.run();

return 0;

}

>编译很棘手.在Ubuntu Linux上,我必须创建如下语句.您可能必须在dlang.org Learn forums中为您的特定平台进行交互.

# dmd hello.d `pkg-config --cflags --libs gtkd3`

>编译完成后,您可以运行D可执行文件以显示Hello World对话框.在Ubuntu Linux上,我只是做了:

# ./你好

>请注意,当您看到窗口并关闭它时,您可能会在Linux上收到一些警告. (在其他平台上,这可能会有所不同.)我收到一条警告“无法连接到辅助功能总线 – 连接被拒绝”.至少在Linux上的修复是将它添加到底部的〜/ .bashrc脚本中:

export NO_AT_BRIDGE = 1

现在,当您打开命令提示符并再次运行已编译的D命令“hello”时,

它不会显示该错误.

如果您收到有关菜单的错误,那么您使用了ApplicationWindow小部件而不是a

窗口小部件,需要在Glade中切换.

添加按钮&信号

>我这样做的方法是单击Glade中的小部件,单击Signals,找到我要添加的事件,例如单击,然后在Handler列中输入一个函数.例如,在button1上,我会输入onButton1Clicked.保存文件.

>现在,在D源代码中,在创建Window对象之后,添加以下代码:

b.connectSignals(NULL);

…其中b是您的Builder变量.

>在D源代码中,为此信号添加一个函数.例如,我做了:

extern(C) void onButton1Clicked()

{

writeln("got here");

Main.quit();

}

注意,在这种情况下,需要extern(C).

>重新编译并运行您的应用程序.您将看到它会自动运行该按钮单击的新功能.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值