在 Microsoft Visual Studio 2010 中使用 gtkmm

在 Microsoft Visual Studio 2010 中使用 gtkmm

  1.  
    1. 安装 gtkmm
    2. 创建带 gtkmm 支持的项目

1.    入门

2.    改正 main() 函数

3.    改正 stdafx.h

4.    添加代码创建一个简单的 gtkmm 窗口

5.    gtkmm 添加 MSVC 属性(Property)文件

6.    修改几个项目配置

7.    关于 Windows 控制台

安装 gtkmm

安装Visual Studio,并且已配置好开发本机 Win32 应用程序的环境,您还必须安装 gtkmm 开发包。为此,请下载并安装最新的 gtkmm开发包从Gnome FTP site不用担心开发软件包的大小,因为它们要远远大于运行的包的大小(运行的包的大小将取决于您的最终用户)。

创建带 gtkmm 支持的项目

入门

首先,在 Visual Studio 中在文件菜单中选择的新建/项目,创建新项目,如下图所示。

 

在新建项目窗口中,请(确保)选择 Win32 控制台应用程序,如下图所示。此外,指定您的项目的名称和位置。本示例的项目的名称是 gtkmm_test 位置是 C:/work

单击完成将为您创建一个新的Win32 控制台项目。现在,使用 gtkmm我们需要修改此项目的实现。

 

修改 main() 函数

这个新项目的第一工作是修改 main () 函数。Visual Studio要通过_tmain()使用自已的一些功能。这是好办法,但却没了可移植性,而 gtkmm 实现的目标之一就是为应用程序提供一个可移植的框架。如此说来,按习惯删除 _tmain(),并将其替换为 (老式)main

 

修改 stdafx.h

其次要改变是 stdafx.h 预编译的头文件。在写这篇文章时, Windows 程序员大多已熟悉预编译头的概念。然而,许多 Unix 程序员不熟悉,GCC到了 3.4 版才加入预编译头支持,而且大多数开放源码项目中仍未使用。Unix 程序员可能会试图完全禁用预编译的头,但禁用之前请仔细考虑。正确使用预编译头可为 gtkmm 的使用提供了更好的编译性能,让您在项目过程中节省几个小时。

下图演示如何更改默认 stdafx.h和包含 gtkmm.h 头文件以提高可移植性。可移植性变化包括删除#pragma once行,将它替换为标准 # ifdef包含文件保护,删除 tchar.h 头文件。最好把你 gtkmm 实现的所有相关头文件 (例如: libglademm.hlibxml++,等等)都放在此文件中,相对于放在其他的文件,将大大加快您的项目的编译。

 

添加代码创建一个简单的 gtkmm 窗口

接下来,将一些简单的 gtkmm程序行添加到 main () 函数。在下图中所示的例子来自于gtkmm 教程(第 3 章基础知识)

gtkmm 添加 MSVC 属性(Property)文件

下一步是添加随gtkmm 一起发布的 MSVC 属性文件。自 2005版以后,Visual Studio 支持使用属性文件为项目添加设置。属性文件可以包含的所有类的构建设置 (例如: 定义,包括路径、 链接路径和库) 并使其易于生成针对第三方软件包。当属性文件添加到项目中时,项目将继承的属性文件指定的所有构建设置。使您的项目可以移动 (相对路径比绝对路径要便于移动),您可从 gtkmm 发布 (通常为 C:/Gtk/MSVC/ 的属性文件复制到包含您的项目 (我们的例子是 C:/work/gtkmm_test/ 的目录里。

接下来,将属性文件添加到项目中。如下图,您通过单击解决方案资源管理器中的属性管理器选项卡,可以执行此操作:

鼠标右键单击  Debug | Win32 的文件夹,选择添加现有的属性表。从文件浏览器中,选择文件 gtkmm-vc100-d-2_4.props。接下来,用鼠标右键单击Release |Win32 的文件夹,再选择添加现有的属性表。从文件浏览器,这次选择文件 gtkmm-vc100-2_4.props。如果您使用 MSVC + + 2008择选名字中带vc90的, MSVC + + 2005择选名字中带vc80的使用。

完成后,属性管理器应该如下图中所示:

修改几个项目配置

此时我们即将完成。最后要在项目属性页中更改几个设置。最简单方法是在解决方案资源管理器中右击的项目名称,然后单击属性菜单项,如下所示:

vc2008以前,我在vc2010好像不用这步设置)要做的第一件事是将 $(NoInherit) 选项从链接器设置中删除,如下图所示。在左侧的树中链接器项。打开配置属性,选择链接器,然后单击输入。现在从附加依赖项行中删除 $(NoInherit) 标记。请务必在DebugRelease 两种模式中这样做。

此时,您的应用程序可以生成并运行。但是,gtkmm 实现头会导致生成期间无关紧要的警告。幸运的是,从相同的项目设置对话框中,可以禁用此警告。在对话框的左边的树中,打开配置属性,然后 C/C++,然后单击高级。现在禁用特定的警告字段中键入 4250;4819

,如下面的图所示。请确保Release Debug中进行此更改。按确定完成。

关于 Windows 控制台

如果您现在生成并运行您的应用程序,您将看到一个什么也不做的简单 Gtk + 窗口。同时您的应用程序也会弹出一个控制台窗口。控制台窗口对于调试 gtkmm 实现的应用程序是很有价值的,因为许多 Gtk + 警告输出到此控制台(不同的 Windows 程序员所熟悉的 OutputDebugString() trace () 函数)。

当你发布您的应用程序时,您可能希望它不弹出控制台。这就需要在链接器设置做两个小更改。从属性页的左边的树中,打开配置属性,选链接器/系统。现在如图将子系统字段的值改为SUBSYSTEM:WINDOWS。当您的应用程序启动时,将禁止创建控制台窗口。还要更改您的应用程序的入口点。选择高级从左侧的树中,然后将入口点字段更改为 mainCRTStartup (请确保使用正确的大小写)如下第二个图所示。

一些用户已发现在活动Debug模式和非活动Release模式方便地摆脱控制台。有人想要在两种模式中同样设置。这完全由开发人员决定。按确定完成。

就这些了。此初始设置后, gtkmm 应用程序可以编辑、构造,并就像任何其他 Visual Studio 项目运行。

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值