Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDocCN
zetcode-zh
提交
bfa91fe8
Z
zetcode-zh
项目概览
OpenDocCN
/
zetcode-zh
10 个月 前同步成功
通知
2
Star
157
Fork
40
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
Z
zetcode-zh
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
bfa91fe8
编写于
10月 22, 2019
作者:
W
wizardforcel
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
2019-10-22 22:06:18
上级
a0b43e0f
变更
103
展开全部
隐藏空白更改
内联
并排
Showing
103 changed file
with
239 addition
and
239 deletion
+239
-239
docs/gui/112.md
docs/gui/112.md
+1
-1
docs/gui/113.md
docs/gui/113.md
+1
-1
docs/gui/114.md
docs/gui/114.md
+1
-1
docs/gui/126.md
docs/gui/126.md
+1
-1
docs/gui/137.md
docs/gui/137.md
+1
-1
docs/gui/152.md
docs/gui/152.md
+1
-1
docs/gui/154.md
docs/gui/154.md
+1
-1
docs/gui/165.md
docs/gui/165.md
+1
-1
docs/gui/173.md
docs/gui/173.md
+1
-1
docs/gui/180.md
docs/gui/180.md
+2
-2
docs/gui/181.md
docs/gui/181.md
+2
-2
docs/gui/182.md
docs/gui/182.md
+2
-2
docs/gui/183.md
docs/gui/183.md
+3
-3
docs/gui/184.md
docs/gui/184.md
+9
-9
docs/gui/186.md
docs/gui/186.md
+4
-4
docs/gui/187.md
docs/gui/187.md
+2
-2
docs/gui/188.md
docs/gui/188.md
+2
-2
docs/gui/189.md
docs/gui/189.md
+1
-1
docs/gui/19.md
docs/gui/19.md
+1
-1
docs/gui/190.md
docs/gui/190.md
+4
-4
docs/gui/191.md
docs/gui/191.md
+5
-5
docs/gui/192.md
docs/gui/192.md
+4
-4
docs/gui/193.md
docs/gui/193.md
+3
-3
docs/gui/195.md
docs/gui/195.md
+2
-2
docs/gui/197.md
docs/gui/197.md
+5
-5
docs/gui/199.md
docs/gui/199.md
+1
-1
docs/gui/201.md
docs/gui/201.md
+2
-2
docs/gui/202.md
docs/gui/202.md
+1
-1
docs/gui/203.md
docs/gui/203.md
+1
-1
docs/gui/204.md
docs/gui/204.md
+3
-3
docs/gui/205.md
docs/gui/205.md
+1
-1
docs/gui/206.md
docs/gui/206.md
+2
-2
docs/gui/208.md
docs/gui/208.md
+4
-4
docs/gui/209.md
docs/gui/209.md
+3
-3
docs/gui/211.md
docs/gui/211.md
+1
-1
docs/gui/218.md
docs/gui/218.md
+1
-1
docs/gui/219.md
docs/gui/219.md
+1
-1
docs/gui/227.md
docs/gui/227.md
+1
-1
docs/gui/228.md
docs/gui/228.md
+5
-5
docs/gui/229.md
docs/gui/229.md
+9
-9
docs/gui/230.md
docs/gui/230.md
+4
-4
docs/gui/231.md
docs/gui/231.md
+3
-3
docs/gui/232.md
docs/gui/232.md
+3
-3
docs/gui/233.md
docs/gui/233.md
+5
-5
docs/gui/234.md
docs/gui/234.md
+6
-6
docs/gui/235.md
docs/gui/235.md
+5
-5
docs/gui/236.md
docs/gui/236.md
+2
-2
docs/gui/237.md
docs/gui/237.md
+3
-3
docs/gui/238.md
docs/gui/238.md
+3
-3
docs/gui/239.md
docs/gui/239.md
+2
-2
docs/gui/240.md
docs/gui/240.md
+3
-3
docs/gui/241.md
docs/gui/241.md
+3
-3
docs/gui/242.md
docs/gui/242.md
+2
-2
docs/gui/243.md
docs/gui/243.md
+5
-5
docs/gui/244.md
docs/gui/244.md
+6
-6
docs/gui/245.md
docs/gui/245.md
+2
-2
docs/gui/246.md
docs/gui/246.md
+4
-4
docs/gui/247.md
docs/gui/247.md
+5
-5
docs/gui/248.md
docs/gui/248.md
+2
-2
docs/gui/249.md
docs/gui/249.md
+2
-2
docs/gui/250.md
docs/gui/250.md
+1
-1
docs/gui/251.md
docs/gui/251.md
+3
-3
docs/gui/253.md
docs/gui/253.md
+1
-1
docs/gui/267.md
docs/gui/267.md
+1
-1
docs/gui/269.md
docs/gui/269.md
+1
-1
docs/gui/277.md
docs/gui/277.md
+1
-1
docs/gui/278.md
docs/gui/278.md
+6
-6
docs/gui/279.md
docs/gui/279.md
+5
-5
docs/gui/280.md
docs/gui/280.md
+2
-2
docs/gui/281.md
docs/gui/281.md
+4
-4
docs/gui/282.md
docs/gui/282.md
+2
-2
docs/gui/283.md
docs/gui/283.md
+2
-2
docs/gui/284.md
docs/gui/284.md
+2
-2
docs/gui/285.md
docs/gui/285.md
+2
-2
docs/gui/286.md
docs/gui/286.md
+2
-2
docs/gui/287.md
docs/gui/287.md
+3
-3
docs/gui/296.md
docs/gui/296.md
+1
-1
docs/gui/297.md
docs/gui/297.md
+2
-2
docs/gui/298.md
docs/gui/298.md
+1
-1
docs/gui/300.md
docs/gui/300.md
+1
-1
docs/gui/305.md
docs/gui/305.md
+1
-1
docs/gui/306.md
docs/gui/306.md
+1
-1
docs/gui/307.md
docs/gui/307.md
+4
-4
docs/gui/31.md
docs/gui/31.md
+1
-1
docs/gui/314.md
docs/gui/314.md
+2
-2
docs/gui/318.md
docs/gui/318.md
+1
-1
docs/gui/319.md
docs/gui/319.md
+1
-1
docs/gui/320.md
docs/gui/320.md
+2
-2
docs/gui/328.md
docs/gui/328.md
+1
-1
docs/gui/336.md
docs/gui/336.md
+1
-1
docs/gui/337.md
docs/gui/337.md
+1
-1
docs/gui/338.md
docs/gui/338.md
+1
-1
docs/gui/340.md
docs/gui/340.md
+1
-1
docs/gui/346.md
docs/gui/346.md
+1
-1
docs/gui/347.md
docs/gui/347.md
+2
-2
docs/gui/46.md
docs/gui/46.md
+1
-1
docs/gui/47.md
docs/gui/47.md
+1
-1
docs/gui/49.md
docs/gui/49.md
+1
-1
docs/gui/56.md
docs/gui/56.md
+1
-1
docs/gui/73.md
docs/gui/73.md
+1
-1
docs/gui/86.md
docs/gui/86.md
+2
-2
docs/gui/96.md
docs/gui/96.md
+1
-1
docs/gui/98.md
docs/gui/98.md
+1
-1
未找到文件。
docs/gui/112.md
浏览文件 @
bfa91fe8
...
...
@@ -12,7 +12,7 @@ Figure: Tetrominoes
wxPython 是旨在创建应用的工具包。 还有其他一些旨在创建计算机游戏的库。 不过,可以使用 wxPython 和其他应用工具包来创建游戏。
##
发展历程
##
开发
我们的俄罗斯方块游戏没有图像,我们使用 wxPython 中提供的绘图 API 绘制四聚体。 每个计算机游戏的背后都有一个数学模型。 俄罗斯方块也是如此。
...
...
docs/gui/113.md
浏览文件 @
bfa91fe8
...
...
@@ -24,4 +24,4 @@ GTK+ 是用于创建图形用户界面的库。 该库是用 C 编程语言创
## 相关教程
[
GTK#教程
](
/gui/gtksharp/
)
,
[
PyGTK 教程
](
/gui/pygtk/
)
,
[
Ruby GTK 教程
](
/gui/rubygtk/
)
和
[
Cairo 图形教程
](
/gfx/cairo/
)
。
\ No newline at end of file
[
GTK# 教程
](
/gui/gtksharp/
)
,
[
PyGTK 教程
](
/gui/pygtk/
)
,
[
Ruby GTK 教程
](
/gui/rubygtk/
)
和
[
Cairo 图形教程
](
/gfx/cairo/
)
。
\ No newline at end of file
docs/gui/114.md
浏览文件 @
bfa91fe8
...
...
@@ -6,7 +6,7 @@
## GTK+
GTK+ 是用于创建图形用户界面的库。 该库是用 C 编程语言创建的。 GTK+ 库也称为 GIMP 工具箱。 最初,该库是在开发 GIMP 图像处理程序时创建的。 从那时起,GTK+ 成为 Linux 和 BSD Unix 下最受欢迎的工具包之一。 如今,开源世界中的大多数 GUI 软件都是在 Qt 或 GTK+ 中创建的。 GTK+ 是一个面向对象的应用编程接口。 面向对象的系统是使用 Glib Object 系统创建的,该系统是 GTK+ 库的基础。GObject 还可以为各种其他编程语言创建语言绑定。 存在用于 C++ ,Python,Perl,Java,C
#
和其他编程语言的语言绑定。
GTK+ 是用于创建图形用户界面的库。 该库是用 C 编程语言创建的。 GTK+ 库也称为 GIMP 工具箱。 最初,该库是在开发 GIMP 图像处理程序时创建的。 从那时起,GTK+ 成为 Linux 和 BSD Unix 下最受欢迎的工具包之一。 如今,开源世界中的大多数 GUI 软件都是在 Qt 或 GTK+ 中创建的。 GTK+ 是一个面向对象的应用编程接口。 面向对象的系统是使用 Glib Object 系统创建的,该系统是 GTK+ 库的基础。GObject 还可以为各种其他编程语言创建语言绑定。 存在用于 C++ ,Python,Perl,Java,C
#
和其他编程语言的语言绑定。
GTK+ 本身取决于以下库:
...
...
docs/gui/126.md
浏览文件 @
bfa91fe8
...
...
@@ -28,7 +28,7 @@ PyQt4 的类分为几个模块:
本教程使用 Python 2.x 版本。
Python 编程语言支持多种编程样式。 它不会强迫程序员采用特定的
范
例。 Python 支持面向对象和过程编程。 对功能编程的支持也很有限。
Python 编程语言支持多种编程样式。 它不会强迫程序员采用特定的
示
例。 Python 支持面向对象和过程编程。 对功能编程的支持也很有限。
Python 编程语言的官方网站是
[
python.org
](
http://python.org
)
...
...
docs/gui/137.md
浏览文件 @
bfa91fe8
...
...
@@ -18,7 +18,7 @@ PyQt4 是旨在创建应用程序的工具包。 还有其他一些旨在创建
创建计算机游戏是增强编程技能的好方法。
##
发展历程
##
开发
我们的俄罗斯方块游戏没有图像,我们使用 PyQt4 编程工具包中提供的绘图 API 绘制四面体。 每个计算机游戏的背后都有一个数学模型。 俄罗斯方块也是如此。
...
...
docs/gui/152.md
浏览文件 @
bfa91fe8
...
...
@@ -6,7 +6,7 @@
Breakout 是 Atari Inc.开发的一款街机游戏。该游戏创建于 1976 年。在该游戏中,玩家移动桨叶并弹跳球。 目的是销毁窗口顶部的砖块。 可以在此处下载游戏图像。
##
发展历程
##
开发
在我们的游戏中,我们只有一个桨,一个球和三十个砖头。 计时器用于创建游戏周期。 我们不使用角度,而是仅更改方向:顶部,底部,左侧和右侧。 该代码的灵感来自 Nathan Dawson 在 PyGame 库中开发的 PyBreakout 游戏。
...
...
docs/gui/154.md
浏览文件 @
bfa91fe8
...
...
@@ -20,7 +20,7 @@ PySide 被实现为一组 Python 模块。 目前它有 15 个模块。 这些
对于那些想学习编程的人来说,Python 是一个理想的起点。
Python 编程语言支持多种编程样式。 它不会强迫程序员采用特定的
范
例。 Python 支持面向对象和过程编程。 对功能编程的支持也很有限。
Python 编程语言支持多种编程样式。 它不会强迫程序员采用特定的
示
例。 Python 支持面向对象和过程编程。 对功能编程的支持也很有限。
Python 编程语言的官方网站是
[
python.org
](
http://python.org
)
...
...
docs/gui/165.md
浏览文件 @
bfa91fe8
...
...
@@ -16,7 +16,7 @@ Figure: Tetrominoes
PySide 是旨在创建应用程序的工具包。 还有其他一些旨在创建计算机游戏的库。 但是,可以使用 PySide 和其他应用程序工具包来创建游戏。
##
发展历程
##
开发
我们的俄罗斯方块游戏没有图像,我们使用 PySide 编程工具包中提供的绘图 API 绘制四面体。 每个计算机游戏的背后都有一个数学模型。 俄罗斯方块也是如此。
...
...
docs/gui/173.md
浏览文件 @
bfa91fe8
...
...
@@ -6,7 +6,7 @@
Nibbles 是较旧的经典视频游戏。 它最初是在 70 年代后期创建的。 后来它被带到 PC 上。 在这个游戏中,玩家控制蛇。 目的是尽可能多地吃苹果。 蛇每次吃一个苹果,它的身体就会长大。 蛇必须避开墙壁和自己的身体。
##
发展历程
##
开发
蛇的每个关节的大小为 10px。 蛇由光标键控制。 最初,蛇具有三个关节。 游戏立即开始。 游戏结束后,我们在窗口中心显示“ Game Over”消息。
...
...
docs/gui/180.md
浏览文件 @
bfa91fe8
...
...
@@ -122,7 +122,7 @@ dia.setMessage("Download completed.");
Figure: MessageBox
##
申请截
止
##
请求终
止
为了防止数据丢失,以数据为中心的应用程序在关闭时通常会显示一个确认对话框。 仅在确认对话框后,应用程序才会终止。
...
...
@@ -475,7 +475,7 @@ font.dispose();
Figure: FontDialog
## 色彩对话
## 色彩对话
框
`ColorDialog`
是用于选择颜色的对话框。
...
...
docs/gui/181.md
浏览文件 @
bfa91fe8
#
用
Java SWT 绘画
# Java SWT 绘画
> 原文: [http://zetcode.com/gui/javaswt/painting/](http://zetcode.com/gui/javaswt/painting/)
...
...
@@ -148,7 +148,7 @@ c3.dispose();
Figure: Colours
##
线型
##
直线
`drawLine()`
方法在可绘制对象上绘制一条线。
`setLineStyle()`
方法指定线条的样式。 以下是内置的 SWT 线型:
...
...
docs/gui/182.md
浏览文件 @
bfa91fe8
# Java SWT 中的
蚕食
# Java SWT 中的
Nibbles
> 原文: [http://zetcode.com/gui/javaswt/nibbles/](http://zetcode.com/gui/javaswt/nibbles/)
...
...
@@ -6,7 +6,7 @@
Nibbles 是较旧的经典视频游戏。 它最初是在 70 年代后期创建的; 后来它被带到 PC 上。 在此游戏中,玩家控制蛇。 目的是尽可能多地吃苹果。 蛇每次吃一个苹果,它的身体就会长大。 蛇必须避开墙壁和自己的身体。
##
发展历程
##
开发
蛇的每个关节的大小为 10 像素。 蛇由光标键控制。 最初,蛇具有三个关节。 游戏立即开始。 游戏结束后,窗口中央将显示“游戏结束”消息。
...
...
docs/gui/183.md
浏览文件 @
bfa91fe8
# C
#
Winforms Mono 教程
# C
#
Winforms Mono 教程
> 原文: [http://zetcode.com/gui/csharpwinforms/](http://zetcode.com/gui/csharpwinforms/)
这是 C
#Winforms Mono 教程。 在本教程中,我们将学习使用 C#& Winforms 进行 GUI 编程。 C#
Winforms Mono 教程适合初学者。
这是 C
# Winforms Mono 教程。 在本教程中,我们将学习使用 C# & Winforms 进行 GUI 编程。 C#
Winforms Mono 教程适合初学者。
## 目录
...
...
@@ -29,4 +29,4 @@ Windows Forms 是图形用户界面应用程序编程接口(API),包含在
## 相关教程
您可能还会对以下相关教程感兴趣:
[
C#教程
](
/lang/csharp/
)
,
[
GTK#教程
](
/gui/gtksharp/
)
,
[
ASP.NET Core 教程
](
/articles/aspnetcore/
)
。
\ No newline at end of file
您可能还会对以下相关教程感兴趣:
[
C# 教程
](
/lang/csharp/
)
,
[
GTK# 教程
](
/gui/gtksharp/
)
,
[
ASP.NET Core 教程
](
/articles/aspnetcore/
)
。
\ No newline at end of file
docs/gui/184.md
浏览文件 @
bfa91fe8
...
...
@@ -6,11 +6,11 @@ Mono Winforms 教程的第一部分介绍了 Mono 平台和 Winforms 库。
## 关于本教程
这是 Mono C
#
Winforms 教程。 Mono Winforms 教程适用于初学者。 本教程的目的是向读者介绍 Mono Winforms 中 GUI 编程的基础知识。 本教程是在 Linux 上创建并测试的。 但是,它也可以在其他操作系统上使用。 大多数示例都应运行而无需修改。 可以在此处下载本教程中使用的图像。
这是 Mono C
#
Winforms 教程。 Mono Winforms 教程适用于初学者。 本教程的目的是向读者介绍 Mono Winforms 中 GUI 编程的基础知识。 本教程是在 Linux 上创建并测试的。 但是,它也可以在其他操作系统上使用。 大多数示例都应运行而无需修改。 可以在此处下载本教程中使用的图像。
##
单声道
##
Mono
Mono Project 是 Xamarin 赞助的一项开放开发计划,目的是开发 Microsoft.NET 开发平台的开源 UNIX 版本。 它是.NET 兼容的工具集,其中包括 C
#
编译器,公共语言运行库,ADO.NET,ASP.NET 和 Winforms 库。
Mono Project 是 Xamarin 赞助的一项开放开发计划,目的是开发 Microsoft.NET 开发平台的开源 UNIX 版本。 它是.NET 兼容的工具集,其中包括 C
#
编译器,公共语言运行库,ADO.NET,ASP.NET 和 Winforms 库。
单声道可分为三组:
...
...
@@ -18,17 +18,17 @@ Mono Project 是 Xamarin 赞助的一项开放开发计划,目的是开发 Mic
*
侏儒开发栈
*
Microsoft 兼容性堆栈
核心组件是 C
#语言和公共语言运行时。 Gnome 开发堆栈包括 GTK#
库和各种数据库连接库。 最后,Microsoft 兼容性堆栈包括 ADO.NET,ASP.NET 和 Winforms 库。
核心组件是 C
# 语言和公共语言运行时。 Gnome 开发堆栈包括 GTK#
库和各种数据库连接库。 最后,Microsoft 兼容性堆栈包括 ADO.NET,ASP.NET 和 Winforms 库。
Mono 是多平台编程平台。 它可以在 Linux,BSD,Mac OS X,Solaris 和 Windows 操作系统上运行。 这是一种多语言的工作。 目前,仅完全支持 C
#
语言。 诸如 Visual Basic 或 IronPython 之类的语言尚未完成。
Mono 是多平台编程平台。 它可以在 Linux,BSD,Mac OS X,Solaris 和 Windows 操作系统上运行。 这是一种多语言的工作。 目前,仅完全支持 C
#
语言。 诸如 Visual Basic 或 IronPython 之类的语言尚未完成。
## Winforms
Windows Forms 是图形用户界面应用程序编程接口(API),包含在 Microsoft .NET Framework 中。 截至 2008 年 5 月 13 日,Mono 的 System.Windows.Forms 2.0 已完成 API。 简而言之,Winforms 是一个用于创建 GUI 应用程序的库。
## 编译
范
例
## 编译
示
例
我们的教程使用 C
#语言。 要编译本教程中的所有示例,我们使用
`gmcs`
编译器。 gmcs 编译器实现了完整的 C#2.0 规范,包括泛型。 C#
源文件必须以.cs 扩展名结尾。
我们的教程使用 C
# 语言。 要编译本教程中的所有示例,我们使用
`gmcs`
编译器。 gmcs 编译器实现了完整的 C# 2.0 规范,包括泛型。 C#
源文件必须以.cs 扩展名结尾。
```
$ gmcs --about
...
...
@@ -41,7 +41,7 @@ Marek Safar, Raja R Harinath, Atushi Enomoto
```
我们有一个简单的 C
#
源文件。 稍后我们将讨论源代码。 现在,我们专注于编译过程。
我们有一个简单的 C
#
源文件。 稍后我们将讨论源代码。 现在,我们专注于编译过程。
`simple.cs`
...
...
@@ -66,7 +66,7 @@ public class Simple : Form
```
C
#应用程序使用称为程序集的模块。 默认情况下,Mono C#
编译器仅引用三个程序集:mscorlib.dll,System.dll 和 System.Xml.dll。 必须使用编译器的命令行选项指定任何其他程序集。 在我们的简单示例中,我们需要 System.Windows.Forms.dll 和 System.Drawing.dll 程序集。
C
# 应用程序使用称为程序集的模块。 默认情况下,Mono C#
编译器仅引用三个程序集:mscorlib.dll,System.dll 和 System.Xml.dll。 必须使用编译器的命令行选项指定任何其他程序集。 在我们的简单示例中,我们需要 System.Windows.Forms.dll 和 System.Drawing.dll 程序集。
```
gmcs -r:System.Windows.Forms.dll -r:System.Drawing.dll simple.cs
...
...
docs/gui/186.md
浏览文件 @
bfa91fe8
...
...
@@ -4,7 +4,7 @@
Mono Winforms 教程继续进行控件的布局管理。 在将控件放置在其父容器上之后,我们必须确保其布局正确。
##
锚
##
`Anchor`
控件的
`Anchor`
属性确定如何使用其父控件调整其大小。 锚是海洋世界中的一个术语。 当船锚掉入水中时,船就固定在某个地方。 Winforms 控件也是如此。
...
...
@@ -17,7 +17,7 @@ Winforms 中的每个控件都可以具有以下`AnchorStyles`值之一:
注意,控件不限于一个值。 他们可以使用|组合这些值。 操作员。
##
基本锚
示例
##
`Anchor`基本
示例
下面的示例显示一个非常基本的示例,演示
`Anchor`
属性。
...
...
@@ -75,7 +75,7 @@ btn2.Anchor = AnchorStyles.Right;
Figure: Before and after resizing
##
码头
##
`Dock`
`Dock`
属性允许我们将控件粘贴到父窗体或控件的特定边缘。
...
...
@@ -269,7 +269,7 @@ ok.Anchor = AnchorStyles.Right;
Figure: Anchored buttons
##
玩家
骨架
##
播放器
骨架
Mono Winforms 教程这一部分的最后一个示例显示了一个更复杂的示例。 它是音乐播放器的骨架。
...
...
docs/gui/187.md
浏览文件 @
bfa91fe8
...
...
@@ -193,9 +193,9 @@ import.DropDownItems.Add(temp);
Figure: Submenu
##
检查
菜单项
##
复选
菜单项
下一个代码示例演示如何创建
选中的
菜单项。
下一个代码示例演示如何创建
复选
菜单项。
`checkmenuitem.cs`
...
...
docs/gui/188.md
浏览文件 @
bfa91fe8
...
...
@@ -6,7 +6,7 @@ Mono Winforms 编程教程的这一部分将介绍基本控件。
Winforms 控件是应用程序的基本构建块。 Winforms 具有各种各样的控件。按钮,复选框,滑块,列表框等。程序员完成工作所需的一切。 在本教程的这一部分中,我们将描述几个有用的控件。
## 标签控
制
## 标签控
件
`Label`
是用于显示文本或图像的简单控件。 它没有得到关注。
...
...
@@ -177,7 +177,7 @@ if (cb.Checked) {
Figure: CheckBox
##
轨迹栏
##
`TrackBar`
`TrackBar`
是一个组件,使用户可以通过在有限的间隔内滑动旋钮来以图形方式选择一个值。 我们的示例将显示音量控制。
...
...
docs/gui/189.md
浏览文件 @
bfa91fe8
...
...
@@ -91,7 +91,7 @@ sb.Text = lb.SelectedItem.ToString();
Figure: ListBox
## 列表
显示
## 列表
视图
`ListView`
控件用于显示项目集合。 它是比
`ListBox`
控件更复杂的控件。 它可以在各种视图中显示数据,主要用于在多列视图中显示数据。
...
...
docs/gui/19.md
浏览文件 @
bfa91fe8
...
...
@@ -60,7 +60,7 @@ PyQt5 与 PyQt4 向后不兼容。 PyQt5 有几个重大变化。 但是,将
本教程使用 Python 3.x 版本。
Python 编程语言支持多种编程样式。 它不会强迫程序员采用特定的
范
例。 Python 支持面向对象和过程编程。 对功能编程的支持也很有限。
Python 编程语言支持多种编程样式。 它不会强迫程序员采用特定的
示
例。 Python 支持面向对象和过程编程。 对功能编程的支持也很有限。
Python 编程语言的官方网站是
[
python.org
](
http://python.org
)
...
...
docs/gui/190.md
浏览文件 @
bfa91fe8
# 对话
方块
# 对话
框
> 原文: [http://zetcode.com/gui/csharpwinforms/dialogs/](http://zetcode.com/gui/csharpwinforms/dialogs/)
...
...
@@ -82,7 +82,7 @@ if (dialog.ShowDialog(this) == DialogResult.OK) {
Figure: FolderBrowserDialog
## 色彩对话
## 色彩对话
框
此对话框显示可用的颜色以及使用户能够定义自定义颜色的控件。
...
...
@@ -335,7 +335,7 @@ class MApplication {
```
我们使用
`OpenDialog`
控件打开 C
#
源文件。 我们有一个
`TextBox`
控件,用于显示文件。
我们使用
`OpenDialog`
控件打开 C
#
源文件。 我们有一个
`TextBox`
控件,用于显示文件。
```
OpenFileDialog dialog = new OpenFileDialog();
...
...
@@ -349,7 +349,7 @@ dialog.Filter = "C# files (*.cs)|*.cs";
```
我们将
`Filter`
属性设置为 C
#源文件。 此对话框实例只能选择 C#
文件。
我们将
`Filter`
属性设置为 C
# 源文件。 此对话框实例只能选择 C#
文件。
```
if (dialog.ShowDialog(this) == DialogResult.OK) {
...
...
docs/gui/191.md
浏览文件 @
bfa91fe8
#
将&拖放到 Mono Winforms 中
#
Mono Winforms 中的拖放
> 原文: [http://zetcode.com/gui/csharpwinforms/dragdrop/](http://zetcode.com/gui/csharpwinforms/dragdrop/)
...
...
@@ -121,9 +121,9 @@ private void OnMouseMove(object sender, MouseEventArgs e)
Figure: Dragging a button
## 拖
曳
文字
## 拖
动
文字
在前面的示例中,我们确实拖
动了控件上的&拖放
。 接下来,我们将对文本数据进行拖放&拖放操作。 在这里,我们将使用 Winforms 库提供的拖放&拖放协议。
在前面的示例中,我们确实拖
放了控件
。 接下来,我们将对文本数据进行拖放&拖放操作。 在这里,我们将使用 Winforms 库提供的拖放&拖放协议。
拖动&放置操作是 Winforms 中的标准通信协议。 我们有两个基本对象。 拖动源和放置目标。
...
...
@@ -263,9 +263,9 @@ private void OnDragDrop(object sender, DragEventArgs e)
Figure: Drag & drop of text
## 拖
曳影
像
## 拖
动图
像
在最后一个示例中,我们将
&
拖放图像拖到窗体上。
在最后一个示例中,我们将拖放图像拖到窗体上。
`dragimage.cs`
...
...
docs/gui/192.md
浏览文件 @
bfa91fe8
#
在 Mono Winforms 中
绘画
#
Mono Winforms 中的
绘画
> 原文: [http://zetcode.com/gui/csharpwinforms/painting/](http://zetcode.com/gui/csharpwinforms/painting/)
...
...
@@ -6,7 +6,7 @@
`System.Drawing`
名称空间提供对
`GDI+`
基本图形功能的访问。 System.Drawing.Drawing2D,System.Drawing.Imaging 和 System.Drawing.Text 命名空间中提供了更高级的功能。
`Graphics`
类提供了在表单上绘图的方法。
##
线数
##
直线
我们的第一个示例将在
`Form`
控件上绘制线条。
...
...
@@ -116,7 +116,7 @@ g.Dispose();
```
我们知道 C
#
语言使用垃圾回收。 那么,为什么我们要明确释放资源? 这是为了提高效率。 我们正在帮助垃圾收集器。
我们知道 C
#
语言使用垃圾回收。 那么,为什么我们要明确释放资源? 这是为了提高效率。 我们正在帮助垃圾收集器。
![
lines
](
img/8af3d19038be7f4ee13d31be2ae8dd2e.jpg
)
...
...
@@ -185,7 +185,7 @@ g.FillRectangle(Brushes.Sienna, 10, 15, 90, 60);
Figure: Colors
##
舱口
##
`HatchBrush`
`HatchBrush`
对象用于填充形状的内部。 我们可以使用几种内置模式。
...
...
docs/gui/193.md
浏览文件 @
bfa91fe8
#
Snake in Mono Winforms
#
Mono Winforms 中的 Snake
> 原文: [http://zetcode.com/gui/csharpwinforms/snake/](http://zetcode.com/gui/csharpwinforms/snake/)
在 Mono Winforms 编程教程的这一部分中,我们将创建一个 Snake 游戏克隆。
##
蛇
游戏
##
Snake
游戏
Snake 是较旧的经典视频游戏。 它最初是在 70 年代后期创建的。 后来它被带到 PC 上。 在这个游戏中,玩家控制蛇。 目的是尽可能多地吃苹果。 蛇每次吃一个苹果,它的身体就会长大。 蛇必须避开墙壁和自己的身体。 该游戏有时称为 Nibbles 。
##
发展历程
##
开发
蛇的每个关节的大小为 10px。 蛇由光标键控制。 最初,蛇具有三个关节。 通过按下光标键之一开始游戏。 如果游戏结束,我们将在棋盘中间显示“ Game Over”消息。
...
...
docs/gui/195.md
浏览文件 @
bfa91fe8
...
...
@@ -12,11 +12,11 @@
Java Gnome 是 Java 编程语言的 GTK+ 和 Gnome 的包装。
GTK+ 是用于创建图形用户界面的库。 该库是用 C 编程语言创建的。 GTK+ 库也称为 GIMP Toolkit。 最初,该库是在开发 GIMP 图像处理程序时创建的。 从那时起,GTK+ 成为 Linux 和 BSD Unix 下最受欢迎的工具包之一。 如今,开源世界中的大多数 GUI 软件都是在 Qt 或 GTK+ 中创建的。 GTK+ 是面向对象的应用程序编程接口。 有几种其他编程语言的绑定。 存在用于 C++ ,Python,Perl,Java,C
#
和其他编程语言的语言绑定。
GTK+ 是用于创建图形用户界面的库。 该库是用 C 编程语言创建的。 GTK+ 库也称为 GIMP Toolkit。 最初,该库是在开发 GIMP 图像处理程序时创建的。 从那时起,GTK+ 成为 Linux 和 BSD Unix 下最受欢迎的工具包之一。 如今,开源世界中的大多数 GUI 软件都是在 Qt 或 GTK+ 中创建的。 GTK+ 是面向对象的应用程序编程接口。 有几种其他编程语言的绑定。 存在用于 C++ ,Python,Perl,Java,C
#
和其他编程语言的语言绑定。
GNOME 是一个桌面环境,是在计算机操作系统之上运行的图形用户界面。 这是一个国际项目,包括创建软件开发框架,为桌面选择应用程序软件,以及开发用于管理应用程序启动,文件处理以及窗口和任务管理的程序。 GNOME 是 GNU Project 的一部分,可以与各种类似 Unix 的操作系统一起使用。 (wikipedia.org)
##
发展技巧
##
开发提示
请使用官方的 Sun JDK。 不要使用任何其他派生或替代。 你被警告了。
...
...
docs/gui/197.md
浏览文件 @
bfa91fe8
...
...
@@ -6,7 +6,7 @@
在设计应用程序的 GUI 时,我们决定要使用哪些小部件以及如何在应用程序中组织这些小部件。 为了组织小部件,我们使用专门的不可见小部件,称为布局容器。 在本章中,我们将提到
`Alignment`
,
`Fixed`
,
`VBox`
,
`HBox`
和
`Table`
。
##
固定
##
`Fixed`
`Fixed`
容器将子窗口小部件放置在固定位置并具有固定大小。 此容器不执行自动布局管理。 在大多数应用程序中,我们不使用此容器。 我们在某些专业领域使用它。 例如游戏,使用图表的专用应用程序,可以移动的可调整大小的组件(如电子表格应用程序中的图表),小型教育示例。
...
...
@@ -148,7 +148,7 @@ add(fix);
Figure: Fixed
##
对准
##
`Alignment`
`Alignment`
容器控制其子窗口小部件的对齐方式和大小。
...
...
@@ -271,7 +271,7 @@ vbox.packStart(halign, false, false, 3);
Figure: Alignment
##
表
##
`Table`
`Table`
小部件按行和列排列小部件。
...
...
@@ -413,9 +413,9 @@ vbox.packStart(table, true, true, 0);
Figure: Calculator skeleton
##
展开并填充
##
`fill`和`expand`
下面的示例说明
Box 容器的 fill 和 expand
参数之间的关系。
下面的示例说明
`Box`
容器的
`fill`
和
`expand`
参数之间的关系。
`boxes.java`
...
...
docs/gui/199.md
浏览文件 @
bfa91fe8
...
...
@@ -245,7 +245,7 @@ fileMenu.append(new SeparatorMenuItem());
Figure: Image menu
##
CheckMenuItem
##
`CheckMenuItem`
`CheckMenuItem`
是带有复选框的菜单项。 它可以用于布尔属性。
...
...
docs/gui/201.md
浏览文件 @
bfa91fe8
...
...
@@ -107,7 +107,7 @@ quit.connect(new Button.Clicked() {
当我们单击按钮小部件时,将触发
`onClicked()`
方法。 我们对按钮单击做出反应,退出了应用程序。
## 移动窗
## 移动窗
口
下一个示例显示了我们如何对移动窗口事件做出反应。 我们在标题栏中显示窗口左上角的当前位置。
...
...
@@ -195,7 +195,7 @@ public boolean onConfigureEvent(Widget widget,
Figure: Move event
##
EnterNotifyEvent
##
`EnterNotifyEvent`
当我们使用鼠标指针进入小部件的区域时,会发出
`EnterNotifyEvent`
。
...
...
docs/gui/202.md
浏览文件 @
bfa91fe8
...
...
@@ -105,7 +105,7 @@ setBorderWidth(8);
Figure: Label Widget
##
HS 分离器
##
`HSeparator`
`HSeparator`
是一个装饰小部件,可用于分隔窗口上的项目。
...
...
docs/gui/203.md
浏览文件 @
bfa91fe8
...
...
@@ -4,7 +4,7 @@
在 Java Gnome 编程教程的这一部分中,我们继续介绍小部件。
##
条目
##
`Entry`
`Entry`
是单行文本输入字段。 该小部件用于输入文本数据。
...
...
docs/gui/204.md
浏览文件 @
bfa91fe8
...
...
@@ -4,7 +4,7 @@
在 Java Gnome 编程教程的这一部分中,我们将介绍一些更高级的小部件。
## 文字
检视
## 文字
视图
`TexView`
小部件用于显示和编辑多行文本。 TexView 小部件也具有 MVC 设计。 TextView 代表视图组件,
`TexBuffer`
代表模型组件。 TexBuffer 用于处理文本数据。
`TextTag`
是可以应用于文本的属性。
`TextIter`
表示文本中两个字符之间的位置。 所有使用文本的操作都是使用文本迭代器完成的。
...
...
@@ -142,7 +142,7 @@ buffer.insert(pointer, "Text in italics", italics);
Figure: TextView
## 列表
显示
## 列表
视图
在下面的示例中,我们在列表视图模式下使用
`TreeView`
小部件。
`ListStore`
用于存储数据。
...
...
@@ -374,7 +374,7 @@ statusbar.setMessage(text);
Figure: ListView
## 树
## 树
视图
在本章的最后一个示例中,我们使用
`TreeView`
小部件显示分层的数据树。
...
...
docs/gui/205.md
浏览文件 @
bfa91fe8
...
...
@@ -171,7 +171,7 @@ info.connect(new Button.Clicked() {
![
Error message dialog
](
img/0e15c580edf7dabfe4bf12f5515909cf.jpg
)
## 关于对话
## 关于对话
框
`AboutDialog`
显示有关应用程序的信息。
`AboutDialog`
可以显示徽标,应用程序名称,版本,版权或许可信息。 也可以给作者或翻译者以荣誉。
...
...
docs/gui/206.md
浏览文件 @
bfa91fe8
...
...
@@ -8,7 +8,7 @@ Pango 是一个免费的开源计算库,可高质量呈现国际化文本。
Pango 提供了用于
`Gdk`
和
`Gtk`
的高级字体和文本处理。
##
行情
##
引用
在我们的第一个示例中,我们展示了如何更改
`Label`
小部件的字体。
...
...
@@ -242,7 +242,7 @@ cr.showLayout(layout);
Figure: Pango markup
##
统一码
##
Unicode
Pango 用于处理国际化文本。
...
...
docs/gui/208.md
浏览文件 @
bfa91fe8
#
与开罗 II 绘图
#
Cario 绘图 II
> 原文: [http://zetcode.com/gui/javagnome/drawingII/](http://zetcode.com/gui/javagnome/drawingII/)
...
...
@@ -276,9 +276,9 @@ lg3.addColorStopRGB(0.9, 0, 0, 0 );
Figure: Gradients
## 星
## 星
形
在下面的示例中,我们创建了一颗移动
之星。 恒
星移动,旋转并成长/收缩。
在下面的示例中,我们创建了一颗移动
的星星。星
星移动,旋转并成长/收缩。
`star.java`
...
...
@@ -458,7 +458,7 @@ for ( int i = 0; i < 10; i++ ) {
在这里,我们画星星。
## 等
候
## 等
待
在此示例中,我们使用透明效果创建一个等待演示。 我们将绘制 8 条线,这些线将逐渐消失,从而产生一条线在移动的错觉。 这种效果通常用于通知用户,一项艰巨的任务正在幕后进行。 一个示例是通过互联网流式传输视频。
...
...
docs/gui/209.md
浏览文件 @
bfa91fe8
# Java Gnome 中的
蚕食
# Java Gnome 中的
Nibbles
> 原文: [http://zetcode.com/gui/javagnome/nibbles/](http://zetcode.com/gui/javagnome/nibbles/)
在 Java Gnome 编程教程的这一部分中,我们将创建一个 Nibbles 游戏克隆。
##
轻咬
##
Nibbles
Nibbles 是较旧的经典视频游戏。 它最初是在 70 年代后期创建的。 后来它被带到 PC 上。 在这个游戏中,玩家控制蛇。 目的是尽可能多地吃苹果。 蛇每次吃一个苹果,它的身体就会长大。 蛇必须避开墙壁和自己的身体。
##
发展历程
##
开发
蛇的每个关节的大小为 10px。 蛇由光标键控制。 最初,蛇具有三个关节。 游戏立即开始。 游戏结束后,我们在状态栏小部件中显示“游戏结束”消息。
...
...
docs/gui/211.md
浏览文件 @
bfa91fe8
...
...
@@ -8,7 +8,7 @@
## 关于
`QtJambi`
是用于创建图形用户界面的跨平台工具包。 它基于两种非常成功的技术。 Qt 库和 Java 编程语言。 Qt 是功能强大的跨平台应用程序开发框架。 它的母语是 C++ 。 Java 是非常成功的编程语言。 QtJambi 是 Qt 库的 Java 绑定。 与 Python,C
#
和 Ruby 绑定不同,诺基亚公司正式支持 Java 绑定。
`QtJambi`
是用于创建图形用户界面的跨平台工具包。 它基于两种非常成功的技术。 Qt 库和 Java 编程语言。 Qt 是功能强大的跨平台应用程序开发框架。 它的母语是 C++ 。 Java 是非常成功的编程语言。 QtJambi 是 Qt 库的 Java 绑定。 与 Python,C
#
和 Ruby 绑定不同,诺基亚公司正式支持 Java 绑定。
## 创建工具提示
...
...
docs/gui/218.md
浏览文件 @
bfa91fe8
...
...
@@ -6,7 +6,7 @@
Nibbles 是较旧的经典视频游戏。 它最初是在 70 年代后期创建的。 后来它被带到 PC 上。 在这个游戏中,玩家控制蛇。 目的是尽可能多地吃苹果。 蛇每次吃一个苹果,它的身体就会长大。 蛇必须避开墙壁和自己的身体。
##
发展历程
##
开发
蛇的每个关节的大小为 10px。 蛇由光标键控制。 最初,蛇具有三个关节。 游戏立即开始。 游戏结束后,我们在窗口中心显示“ Game Over”消息。
...
...
docs/gui/219.md
浏览文件 @
bfa91fe8
...
...
@@ -21,7 +21,7 @@
## GTK
GTK 是用于创建图形用户界面的库。 该库是用 C 编程语言创建的。 GTK 库也称为 GIMP Toolkit。 最初,该库是在开发 GIMP 图像处理程序时创建的。 从那时起,GTK 成为 Linux 和 BSD Unix 下最受欢迎的工具包之一。 如今,开源世界中的大多数 GUI 软件都是在 Qt 或 GTK 中创建的。 语言绑定适用于 C++ ,Python,Perl,Java,C
#
,JavaScript,PHP 和其他编程语言。
GTK 是用于创建图形用户界面的库。 该库是用 C 编程语言创建的。 GTK 库也称为 GIMP Toolkit。 最初,该库是在开发 GIMP 图像处理程序时创建的。 从那时起,GTK 成为 Linux 和 BSD Unix 下最受欢迎的工具包之一。 如今,开源世界中的大多数 GUI 软件都是在 Qt 或 GTK 中创建的。 语言绑定适用于 C++ ,Python,Perl,Java,C
#
,JavaScript,PHP 和其他编程语言。
[
Tweet
](
https://twitter.com/share
)
...
...
docs/gui/227.md
浏览文件 @
bfa91fe8
...
...
@@ -6,7 +6,7 @@
Nibbles 是较旧的经典视频游戏。 它最初是在 70 年代后期创建的。 后来它被带到 PC 上。 在这个游戏中,玩家控制蛇。 目的是尽可能多地吃苹果。 蛇每次吃一个苹果,它的身体就会长大。 蛇必须避开墙壁和自己的身体。
##
发展历程
##
开发
蛇的每个关节的大小为 10px。 蛇由光标键控制。 最初,蛇具有三个关节。 游戏立即开始。 游戏结束后,我们在窗口中心显示“ Game Over”消息。
...
...
docs/gui/228.md
浏览文件 @
bfa91fe8
# GTK
#
教程
# GTK
#
教程
> 原文: [http://zetcode.com/gui/gtksharp/](http://zetcode.com/gui/gtksharp/)
这是针对 C
#编程语言的 GTK#
教程。 本教程适合初学者和更高级的程序员。
这是针对 C
# 编程语言的 GTK#
教程。 本教程适合初学者和更高级的程序员。
## 目录
...
...
@@ -25,12 +25,12 @@
## GTK
#
## GTK
#
GTK
#是针对 C#编程语言的 GTK+ 的包装。 该库有助于使用 Mono 或任何其他兼容的 CLR 构建图形 GNOME 应用程序。 使用 Gtk#构建的应用程序将在许多平台上运行,包括 Linux,Microsoft Windows 和 Mac OSX。GTK#
是 Mono 计划的一部分。
GTK
# 是针对 C# 编程语言的 GTK+ 的包装。 该库有助于使用 Mono 或任何其他兼容的 CLR 构建图形 GNOME 应用程序。 使用 Gtk# 构建的应用程序将在许多平台上运行,包括 Linux,Microsoft Windows 和 Mac OSX。GTK#
是 Mono 计划的一部分。
[
Tweet
](
https://twitter.com/share
)
## 相关教程
[
C#教程
](
/lang/csharp/
)
深入介绍了 C#语言。
[
Mono C#Winforms 教程
](
/gui/csharpwinforms/
)
和
[
C#Qyoto 教程
](
/gui/csharpqyoto/
)
提供了 C#语言的替代 GUI 工具箱。
\ No newline at end of file
[
C# 教程
](
/lang/csharp/
)
深入介绍了 C# 语言。
[
Mono C# Winforms 教程
](
/gui/csharpwinforms/
)
和
[
C# Qyoto 教程
](
/gui/csharpqyoto/
)
提供了 C# 语言的替代 GUI 工具箱。
\ No newline at end of file
docs/gui/229.md
浏览文件 @
bfa91fe8
# GTK
#
简介
# GTK
#
简介
> 原文: [http://zetcode.com/gui/gtksharp/introduction/](http://zetcode.com/gui/gtksharp/introduction/)
这是 GTK
#编程入门教程。 本教程针对 C#编程语言。 它已在 Linux 上创建并经过测试。 GTK#
编程教程适合新手和中级程序员。 这是本教程中使用的
[
图像
](
/img/gui/sharpgimg.tgz
)
。
这是 GTK
# 编程入门教程。 本教程针对 C# 编程语言。 它已在 Linux 上创建并经过测试。 GTK#
编程教程适合新手和中级程序员。 这是本教程中使用的
[
图像
](
/img/gui/sharpgimg.tgz
)
。
## GTK+
GTK+ 是用于创建图形用户界面的库。 该库是用 C 编程语言创建的。 GTK+ 库也称为 GIMP Toolkit。 最初,该库是在开发 GIMP 图像处理程序时创建的。 从那时起,GTK+ 成为 Linux 和 BSD Unix 下最受欢迎的工具包之一。 如今,开源世界中的大多数 GUI 软件都是在 Qt 或 GTK+ 中创建的。 GTK+ 是面向对象的应用程序编程接口。 面向对象的系统是使用 Glib 对象系统创建的,该系统是 GTK+ 库的基础。
`GObject`
还可以为其他各种编程语言创建语言绑定。 存在用于 C++ ,Python,Perl,Java,C
#
和其他编程语言的语言绑定。
GTK+ 是用于创建图形用户界面的库。 该库是用 C 编程语言创建的。 GTK+ 库也称为 GIMP Toolkit。 最初,该库是在开发 GIMP 图像处理程序时创建的。 从那时起,GTK+ 成为 Linux 和 BSD Unix 下最受欢迎的工具包之一。 如今,开源世界中的大多数 GUI 软件都是在 Qt 或 GTK+ 中创建的。 GTK+ 是面向对象的应用程序编程接口。 面向对象的系统是使用 Glib 对象系统创建的,该系统是 GTK+ 库的基础。
`GObject`
还可以为其他各种编程语言创建语言绑定。 存在用于 C++ ,Python,Perl,Java,C
#
和其他编程语言的语言绑定。
GTK+ 本身取决于以下库。
...
...
@@ -21,24 +21,24 @@ GTK+ 本身取决于以下库。
Gnome 和 XFce 桌面环境已使用 GTK+ 库创建。 SWT 和 wxWidgets 是使用 GTK+ 的众所周知的编程框架。 使用 GTK+ 的著名软件应用程序包括 Firefox 或 Inkscape。
## GTK
#
## GTK
#
GTK
#是针对 C#编程语言的 GTK+ 的包装。 该库有助于使用 Mono 或任何其他兼容的 CLR 构建图形 GNOME 应用程序。 Gtk#是一个事件驱动的系统,就像任何其他现代的窗口库一样,其中应用程序中的每个小部件都具有处理程序方法,这些处理程序方法在发生特定事件时被调用。 使用 Gtk#构建的应用程序将在许多平台上运行,包括 Linux,Microsoft,Windows 和 Mac OSX。GTK#是 Mono 计划的一部分。 Mono 中基本上有两个窗口小部件工具箱:Winforms 和 GTK#。 GTK#
被认为是 Linux / Unix 操作系统的本机。
GTK
# 是针对 C# 编程语言的 GTK+ 的包装。 该库有助于使用 Mono 或任何其他兼容的 CLR 构建图形 GNOME 应用程序。 Gtk# 是一个事件驱动的系统,就像任何其他现代的窗口库一样,其中应用程序中的每个小部件都具有处理程序方法,这些处理程序方法在发生特定事件时被调用。 使用 Gtk# 构建的应用程序将在许多平台上运行,包括 Linux,Microsoft,Windows 和 Mac OSX。GTK# 是 Mono 计划的一部分。 Mono 中基本上有两个窗口小部件工具箱:Winforms 和 GTK# 。 GTK#
被认为是 Linux / Unix 操作系统的本机。
## 编译 GTK
#
应用程序
## 编译 GTK
#
应用程序
我们使用 gmcs 编译器来编译我们的 GTK
#
应用程序。
我们使用 gmcs 编译器来编译我们的 GTK
#
应用程序。
```
$ gmcs -pkg:gtk-sharp-2.0 -r:/usr/lib/mono/2.0/Mono.Cairo.dll application.cs
```
上一行编译了一个也使用开罗库的 GTK
#
应用程序。
上一行编译了一个也使用开罗库的 GTK
#
应用程序。
## 资料来源
*
[
go-mono.com
](
http://www.go-mono.com
)
*
[
wikipedia.org
](
http://wwww.wikipedia.org
)
在 GTK#教程的这一部分中,我们介绍了 GTK#库。
\ No newline at end of file
在 GTK# 教程的这一部分中,我们介绍了 GTK# 库。
\ No newline at end of file
docs/gui/230.md
浏览文件 @
bfa91fe8
...
...
@@ -2,7 +2,7 @@
> 原文: [http://zetcode.com/gui/gtksharp/firststeps/](http://zetcode.com/gui/gtksharp/firststeps/)
在 GTK
#
编程教程的这一部分中,我们将进行编程的第一步。 我们将创建简单的程序。
在 GTK
#
编程教程的这一部分中,我们将进行编程的第一步。 我们将创建简单的程序。
## 简单的例子
...
...
@@ -179,7 +179,7 @@ Figure: Icon
## 按钮
在下一个示例中,我们将使用 GTK
#
库进一步增强我们的编程技能。
在下一个示例中,我们将使用 GTK
#
库进一步增强我们的编程技能。
`buttons.cs`
...
...
@@ -252,7 +252,7 @@ Button btn3 = new Button(Stock.Close);
```
第三个按钮在其区域内显示图像。 GTK
#
库具有我们可以使用的内置图像库。
第三个按钮在其区域内显示图像。 GTK
#
库具有我们可以使用的内置图像库。
```
btn4.SetSizeRequest(80, 40);
...
...
@@ -288,4 +288,4 @@ ShowAll();
Figure: Buttons
在本章中,我们在 GTK#编程库中创建了第一个程序。
\ No newline at end of file
在本章中,我们在 GTK# 编程库中创建了第一个程序。
\ No newline at end of file
docs/gui/231.md
浏览文件 @
bfa91fe8
# GTK
#
中的布局管理
# GTK
#
中的布局管理
> 原文: [http://zetcode.com/gui/gtksharp/layout/](http://zetcode.com/gui/gtksharp/layout/)
...
...
@@ -382,7 +382,7 @@ class SharpApp : Window {
```
该代码示例显示了如何在 GTK
#
中创建类似的窗口。
该代码示例显示了如何在 GTK
#
中创建类似的窗口。
```
Table table = new Table(8, 4, false);
...
...
@@ -433,4 +433,4 @@ table.Attach(valign, 3, 4, 2, 3, AttachOptions.Fill,
Figure: Windows
在本章中,我们介绍了 GTK#小部件的布局管理。
\ No newline at end of file
在本章中,我们介绍了 GTK# 小部件的布局管理。
\ No newline at end of file
docs/gui/232.md
浏览文件 @
bfa91fe8
...
...
@@ -2,7 +2,7 @@
> 原文: [http://zetcode.com/gui/gtksharp/menus/](http://zetcode.com/gui/gtksharp/menus/)
在 GTK
#
编程教程的这一部分中,我们将使用菜单。
在 GTK
#
编程教程的这一部分中,我们将使用菜单。
菜单栏是 GUI 应用程序中最常见的部分之一。 它是位于各个菜单中的一组命令。 在控制台应用程序中,我们必须记住各种奥术命令,而在这里,我们将大多数命令分组为逻辑部分。 这些公认的标准可进一步减少学习新应用程序的时间。
...
...
@@ -329,7 +329,7 @@ Figure: CheckMenuItem
## 子菜单
我们的最后一个示例演示了如何在 GTK
#
中创建一个子菜单。
我们的最后一个示例演示了如何在 GTK
#
中创建一个子菜单。
`submenu.cs`
...
...
@@ -431,4 +431,4 @@ imenu.Append(imail);
Figure: Submenu
在 GTK#编程库的这一章中,我们展示了如何使用菜单。
\ No newline at end of file
在 GTK# 编程库的这一章中,我们展示了如何使用菜单。
\ No newline at end of file
docs/gui/233.md
浏览文件 @
bfa91fe8
# GTK
#
中的工具栏
# GTK
#
中的工具栏
> 原文: [http://zetcode.com/gui/gtksharp/toolbars/](http://zetcode.com/gui/gtksharp/toolbars/)
在 GTK
#
编程教程的这一部分中,我们将使用工具栏。
在 GTK
#
编程教程的这一部分中,我们将使用工具栏。
菜单将我们可以在应用程序中使用的命令分组。 使用工具栏可以快速访问最常用的命令。 工具栏是带有按钮的水平或垂直面板。 这些按钮包含图像或图像和文本。 通过单击工具栏按钮,我们执行一个动作。
...
...
@@ -109,7 +109,7 @@ Figure: Toolbar
## 工具栏
在第二个示例中,我们显示了两个工具栏。 许多应用程序具有多个工具栏。 我们展示了如何在 GTK
#
中做到这一点。
在第二个示例中,我们显示了两个工具栏。 许多应用程序具有多个工具栏。 我们展示了如何在 GTK
#
中做到这一点。
`toolbars.cs`
...
...
@@ -283,7 +283,7 @@ class SharpApp : Window {
```
我们的示例从 GTK
#
库存资源创建撤消和重做按钮。 单击几下后,每个按钮均被禁用。 按钮显示为灰色。
我们的示例从 GTK
#
库存资源创建撤消和重做按钮。 单击几下后,每个按钮均被禁用。 按钮显示为灰色。
```
private int count = 2;
...
...
@@ -322,4 +322,4 @@ if (count <= 0) {
Figure: Undo redo
在 GTK#编程库的这一章中,我们提到了工具栏。
\ No newline at end of file
在 GTK# 编程库的这一章中,我们提到了工具栏。
\ No newline at end of file
docs/gui/234.md
浏览文件 @
bfa91fe8
# GTK
#
中的事件
# GTK
#
中的事件
> 原文: [http://zetcode.com/gui/gtksharp/events/](http://zetcode.com/gui/gtksharp/events/)
在 GTK
#
编程教程的这一部分中,我们将讨论事件。
在 GTK
#
编程教程的这一部分中,我们将讨论事件。
GTK
#
库是一个事件驱动的系统。 所有 GUI 应用程序都会对事件做出反应。 应用程序启动一个主循环,该循环不断检查新生成的事件。 如果没有事件,则应用程序将等待并且不执行任何操作。 事件主要由应用程序的用户生成。 但是它们也可以通过其他方式生成,例如 Internet 连接,窗口管理器或计时器。
GTK
#
库是一个事件驱动的系统。 所有 GUI 应用程序都会对事件做出反应。 应用程序启动一个主循环,该循环不断检查新生成的事件。 如果没有事件,则应用程序将等待并且不执行任何操作。 事件主要由应用程序的用户生成。 但是它们也可以通过其他方式生成,例如 Internet 连接,窗口管理器或计时器。
## 简单事件示例
...
...
@@ -77,7 +77,7 @@ void OnClick(object sender, EventArgs args)
```
这是
`OnClick()`
方法。 它有两个参数。 第一个参数是对象,它触发了此事件。 在我们的例子中,它是退出按钮。 第二个参数为我们提供了有关事件的各种其他信息。 事件参数始终取决于事件的类型。 每种方法的签名都可以在 GTK
#
库的参考手册中找到。
[
http://www.go-mono.com/docs/
](
http://www.go-mono.com/docs/
)
这是
`OnClick()`
方法。 它有两个参数。 第一个参数是对象,它触发了此事件。 在我们的例子中,它是退出按钮。 第二个参数为我们提供了有关事件的各种其他信息。 事件参数始终取决于事件的类型。 每种方法的签名都可以在 GTK
#
库的参考手册中找到。
[
http://www.go-mono.com/docs/
](
http://www.go-mono.com/docs/
)
## 移动窗
...
...
@@ -117,7 +117,7 @@ class SharpApp : Window {
```
在前面的示例中,我们已将委托或方法插入事件。 在 GTK
#
中,许多事件已经具有处理程序方法。 在这种情况下,我们可以覆盖该方法。 在我们的代码示例中就是这种情况。
在前面的示例中,我们已将委托或方法插入事件。 在 GTK
#
中,许多事件已经具有处理程序方法。 在这种情况下,我们可以覆盖该方法。 在我们的代码示例中就是这种情况。
```
protected override bool OnConfigureEvent(Gdk.EventConfigure args)
...
...
@@ -284,4 +284,4 @@ if (cb.Active) {
Figure: Disconnect
本章是关于 GTK#中的事件的。
\ No newline at end of file
本章是关于 GTK# 中的事件的。
\ No newline at end of file
docs/gui/235.md
浏览文件 @
bfa91fe8
# GTK 中的小部件
#
# GTK 中的小部件
#
> 原文: [http://zetcode.com/gui/gtksharp/widgets/](http://zetcode.com/gui/gtksharp/widgets/)
在 GTK
#编程教程的这一部分中,我们将介绍一些 GTK#
小部件。
在 GTK
# 编程教程的这一部分中,我们将介绍一些 GTK#
小部件。
小部件是 GUI 应用程序的基本构建块。 多年来,几个小部件已成为所有 OS 平台上所有工具包中的标准。 例如,按钮,复选框或滚动条。 GTK
#工具箱的理念是将小部件的数量保持在最低水平。 将创建更多专门的小部件作为自定义 GTK#
小部件。
小部件是 GUI 应用程序的基本构建块。 多年来,几个小部件已成为所有 OS 平台上所有工具包中的标准。 例如,按钮,复选框或滚动条。 GTK
# 工具箱的理念是将小部件的数量保持在最低水平。 将创建更多专门的小部件作为自定义 GTK#
小部件。
## 标签
...
...
@@ -64,7 +64,7 @@ your rolled up sleeves and your skull t-shirt
```
在 C
#
编程语言中,多行字符串以
`@`
字符开头。
在 C
#
编程语言中,多行字符串以
`@`
字符开头。
```
BorderWidth = 8;
...
...
@@ -334,4 +334,4 @@ Add(image);
Figure: Image
在本章中,我们展示了 GTK#编程库的第一组基本小部件。
\ No newline at end of file
在本章中,我们展示了 GTK# 编程库的第一组基本小部件。
\ No newline at end of file
docs/gui/236.md
浏览文件 @
bfa91fe8
...
...
@@ -2,7 +2,7 @@
> 原文: [http://zetcode.com/gui/gtksharp/widgetsII/](http://zetcode.com/gui/gtksharp/widgetsII/)
在 GTK
#编程教程的这一部分中,我们继续介绍 GTK#
小部件。
在 GTK
# 编程教程的这一部分中,我们继续介绍 GTK#
小部件。
我们将介绍
`Entry`
小部件,
`Scale`
小部件,
`ToggleButton`
和
`Calendar`
小部件。
...
...
@@ -421,4 +421,4 @@ label.Text = cal.Month + 1 + "/" + cal.Day + "/" + cal.Year;
Figure: Calendar
在本章中,我们结束了有关 GTK#小部件的讨论。
\ No newline at end of file
在本章中,我们结束了有关 GTK# 小部件的讨论。
\ No newline at end of file
docs/gui/237.md
浏览文件 @
bfa91fe8
# GTK 中的高级小部件
#
# GTK 中的高级小部件
#
> 原文: [http://zetcode.com/gui/gtksharp/advancedwidgets/](http://zetcode.com/gui/gtksharp/advancedwidgets/)
在 GTK
#编程教程的这一部分中,我们将介绍 GTK#
中的一些更高级的小部件。 我们将介绍 IconView,ListView 和 TreeView 小部件。
在 GTK
# 编程教程的这一部分中,我们将介绍 GTK#
中的一些更高级的小部件。 我们将介绍 IconView,ListView 和 TreeView 小部件。
## 图标视图
...
...
@@ -565,4 +565,4 @@ tree.Model = treestore;
Figure: Tree
在本章中,我们讨论的是高级 GTK#小部件。
\ No newline at end of file
在本章中,我们讨论的是高级 GTK# 小部件。
\ No newline at end of file
docs/gui/238.md
浏览文件 @
bfa91fe8
# GTK
#
中的对话框
# GTK
#
中的对话框
> 原文: [http://zetcode.com/gui/gtksharp/dialogs/](http://zetcode.com/gui/gtksharp/dialogs/)
在 GTK
#
编程教程的这一部分中,我们将介绍对话框。
在 GTK
#
编程教程的这一部分中,我们将介绍对话框。
对话框窗口或对话框是大多数现代 GUI 应用程序必不可少的部分。 对话被定义为两个或更多人之间的对话。 在计算机应用程序中,对话框是一个窗口,用于与应用程序“对话”。 对话框用于输入数据,修改数据,更改应用程序设置等。对话框是用户与计算机程序之间进行通信的重要手段。
...
...
@@ -362,4 +362,4 @@ cdia.Response += delegate (object o, ResponseArgs resp) {
Figure: ColorSelectionDialog
在 GTK#教程的这一部分中,我们讨论了对话框。
\ No newline at end of file
在 GTK# 教程的这一部分中,我们讨论了对话框。
\ No newline at end of file
docs/gui/239.md
浏览文件 @
bfa91fe8
...
...
@@ -2,7 +2,7 @@
> 原文: [http://zetcode.com/gui/gtksharp/pango/](http://zetcode.com/gui/gtksharp/pango/)
在 GTK
#
编程教程的这一部分中,我们将探索 Pango 库。
在 GTK
#
编程教程的这一部分中,我们将探索 Pango 库。
Pango 是一个免费的开源计算库,可高质量呈现国际化文本。 可以使用不同的字体后端,从而允许跨平台支持。 (维基百科)
...
...
@@ -390,4 +390,4 @@ renderer.Gc = null;
Figure: Australia
在 GTK#编程库的这一章中,我们使用了 Pango 库。
\ No newline at end of file
在 GTK# 编程库的这一章中,我们使用了 Pango 库。
\ No newline at end of file
docs/gui/240.md
浏览文件 @
bfa91fe8
# 在 GTK 中与开罗绘图
#
# 在 GTK 中与开罗绘图
#
> 原文: [http://zetcode.com/gui/gtksharp/drawing/](http://zetcode.com/gui/gtksharp/drawing/)
在 GTK
#
编程教程的这一部分中,我们将使用 Cairo 库进行一些绘制。
在 GTK
#
编程教程的这一部分中,我们将使用 Cairo 库进行一些绘制。
Cairo 是用于创建 2D 矢量图形的库。 我们可以使用它来绘制自己的小部件,图表或各种效果或动画。
...
...
@@ -493,4 +493,4 @@ cr.ShowText("Most relationships seem so transitory");
Figure: Soulmate
在 GTK#编程库的这一章中,我们使用开罗库进行绘制。
\ No newline at end of file
在 GTK# 编程库的这一章中,我们使用开罗库进行绘制。
\ No newline at end of file
docs/gui/241.md
浏览文件 @
bfa91fe8
# 在 GTK
#
II 中与开罗绘图
# 在 GTK
#
II 中与开罗绘图
> 原文: [http://zetcode.com/gui/gtksharp/drawingII/](http://zetcode.com/gui/gtksharp/drawingII/)
在 GTK
#
编程教程的这一部分中,我们将继续使用 Cairo 库进行绘制。
在 GTK
#
编程教程的这一部分中,我们将继续使用 Cairo 库进行绘制。
## 甜甜圈
...
...
@@ -668,4 +668,4 @@ cr.Stroke();
Figure: Waiting
在 GTK#编程库的这一章中,我们使用 Cairo 库进行了一些更高级的绘制。
\ No newline at end of file
在 GTK# 编程库的这一章中,我们使用 Cairo 库进行了一些更高级的绘制。
\ No newline at end of file
docs/gui/242.md
浏览文件 @
bfa91fe8
# GTK 中的自定义小部件
#
# GTK 中的自定义小部件
#
> 原文: [http://zetcode.com/gui/gtksharp/customwidget/](http://zetcode.com/gui/gtksharp/customwidget/)
...
...
@@ -206,4 +206,4 @@ void OnChanged(object sender, EventArgs args)
Figure: Burning widget
在本章中,我们在 GTK#中创建了一个自定义窗口小部件。
\ No newline at end of file
在本章中,我们在 GTK# 中创建了一个自定义窗口小部件。
\ No newline at end of file
docs/gui/243.md
浏览文件 @
bfa91fe8
# Visual Basic GTK
#
教程
# Visual Basic GTK
#
教程
> 原文: [http://zetcode.com/gui/vbgtk/](http://zetcode.com/gui/vbgtk/)
这是 Visual Basic GTK
#教程。 在本教程中,您将学习使用 Visual Basic 在 GTK#
中进行 GUI 编程的基础。 本教程适合初学者和中级程序员。
这是 Visual Basic GTK
# 教程。 在本教程中,您将学习使用 Visual Basic 在 GTK#
中进行 GUI 编程的基础。 本教程适合初学者和中级程序员。
## 目录
...
...
@@ -19,10 +19,10 @@
## GTK
#
## GTK
#
GTK
#是一个库,提供 GTK+ 与 Mono .NET 语言(如 C#或 Visual Basic)的绑定。 GTK+ 是用于创建图形用户界面的领先工具包之一。 GTK#
和 Visual Basic 都是 Mono 开发平台的一部分。
GTK
# 是一个库,提供 GTK+ 与 Mono .NET 语言(如 C# 或 Visual Basic)的绑定。 GTK+ 是用于创建图形用户界面的领先工具包之一。 GTK#
和 Visual Basic 都是 Mono 开发平台的一部分。
## 相关教程
ZetCode 展示了完整的
[
Visual Basic 教程
](
/lang/visualbasic/
)
。 有用于姐妹语言
[
的 GTK#教程 C#GTK#教程
](
/gui/gtksharp/
)
。 其他使用 Visual Basic 的工具包的教程包括
[
Qyoto Visual Basic 教程
](
/gui/vbqyoto/
)
和
[
Visual Basic Winforms 教程
](
/gui/vbwinforms/
)
。
\ No newline at end of file
ZetCode 展示了完整的
[
Visual Basic 教程
](
/lang/visualbasic/
)
。 有用于姐妹语言
[
的 GTK# 教程 C# GTK# 教程
](
/gui/gtksharp/
)
。 其他使用 Visual Basic 的工具包的教程包括
[
Qyoto Visual Basic 教程
](
/gui/vbqyoto/
)
和
[
Visual Basic Winforms 教程
](
/gui/vbwinforms/
)
。
\ No newline at end of file
docs/gui/244.md
浏览文件 @
bfa91fe8
# Visual Basic GTK 简介
#
# Visual Basic GTK 简介
#
> 原文: [http://zetcode.com/gui/vbgtk/introduction/](http://zetcode.com/gui/vbgtk/introduction/)
在 Visual Basic GTK
#编程教程的这一部分中,我们将介绍 GTK#
库,并使用 Visual Basic 编程语言创建第一个程序。
在 Visual Basic GTK
# 编程教程的这一部分中,我们将介绍 GTK#
库,并使用 Visual Basic 编程语言创建第一个程序。
本教程的目的是使您开始使用 GTK
#
和 Visual Basic。 可以在此处下载本教程中使用的图像。 我使用了 Gnome 项目的探戈图标包中的一些图标。
本教程的目的是使您开始使用 GTK
#
和 Visual Basic。 可以在此处下载本教程中使用的图像。 我使用了 Gnome 项目的探戈图标包中的一些图标。
## 关于
GTK
#是一个库,提供 GTK+ 与 Mono .NET 语言(如 C#或 Visual Basic)的绑定。 GTK+ 是用于创建图形用户界面的领先工具包之一。 GTK#
和 Visual Basic 都是 Mono 开发平台的一部分。
GTK
# 是一个库,提供 GTK+ 与 Mono .NET 语言(如 C# 或 Visual Basic)的绑定。 GTK+ 是用于创建图形用户界面的领先工具包之一。 GTK#
和 Visual Basic 都是 Mono 开发平台的一部分。
```
vbnc -r:/usr/lib/mono/gtk-sharp-2.0/gtk-sharp.dll quitbutton.vb
```
上面的命令显示了如何编译 quitbutton 示例。 mono VB 编译器的-r 参数加载 GTK
#
程序集。 这是一个动态库。 该命令显示了 Ubuntu 系统上 dll 库的路径。
上面的命令显示了如何编译 quitbutton 示例。 mono VB 编译器的-r 参数加载 GTK
#
程序集。 这是一个动态库。 该命令显示了 Ubuntu 系统上 dll 库的路径。
## 简单的例子
...
...
@@ -325,4 +325,4 @@ End Sub
Figure: Quit button
本节介绍了使用 Visual Basic 语言的 GTK#库。
\ No newline at end of file
本节介绍了使用 Visual Basic 语言的 GTK# 库。
\ No newline at end of file
docs/gui/245.md
浏览文件 @
bfa91fe8
...
...
@@ -488,7 +488,7 @@ End Class
```
该代码示例显示了如何在 GTK
#
中创建类似的窗口。
该代码示例显示了如何在 GTK
#
中创建类似的窗口。
```
Dim table As New Table(8, 4, False)
...
...
@@ -537,4 +537,4 @@ table.Attach(valign, 3, 4, 2, 3, AttachOptions.Fill, _
Figure: Windows
在 Visual Basic GTK#教程的这一部分中,我们提到了小部件的布局管理。
\ No newline at end of file
在 Visual Basic GTK# 教程的这一部分中,我们提到了小部件的布局管理。
\ No newline at end of file
docs/gui/246.md
浏览文件 @
bfa91fe8
...
...
@@ -2,9 +2,9 @@
> 原文: [http://zetcode.com/gui/vbgtk/widgets/](http://zetcode.com/gui/vbgtk/widgets/)
在 Visual Basic GTK
#
编程教程的这一部分中,我们将介绍一些小部件。
在 Visual Basic GTK
#
编程教程的这一部分中,我们将介绍一些小部件。
小部件是 GUI 应用程序的基本构建块。 多年来,几个小部件已成为所有 OS 平台上所有工具包中的标准。 例如,按钮,复选框或滚动条。 GTK
#工具箱的理念是将小部件的数量保持在最低水平。 将创建更多专门的小部件作为自定义 GTK#
小部件。
小部件是 GUI 应用程序的基本构建块。 多年来,几个小部件已成为所有 OS 平台上所有工具包中的标准。 例如,按钮,复选框或滚动条。 GTK
# 工具箱的理念是将小部件的数量保持在最低水平。 将创建更多专门的小部件作为自定义 GTK#
小部件。
## 复选框
...
...
@@ -191,7 +191,7 @@ End Class
```
我们定义了多行文字。 与 C
#
,Python 或 Ruby 不同,没有简单的结构可以用 Visual Basic 语言创建多行文本。 若要在 Visual Basic 中创建多行文本,我们使用
`vbNewLine`
打印常量,
`+`
串联字符和
`_`
行终止字符。
我们定义了多行文字。 与 C
#
,Python 或 Ruby 不同,没有简单的结构可以用 Visual Basic 语言创建多行文本。 若要在 Visual Basic 中创建多行文本,我们使用
`vbNewLine`
打印常量,
`+`
串联字符和
`_`
行终止字符。
```
Me.BorderWidth = 10
...
...
@@ -604,4 +604,4 @@ End Sub
Figure: ComboBox
在本章中,我们使用 Visual Basic 语言展示了 GTK#编程库的一些基本小部件。
\ No newline at end of file
在本章中,我们使用 Visual Basic 语言展示了 GTK# 编程库的一些基本小部件。
\ No newline at end of file
docs/gui/247.md
浏览文件 @
bfa91fe8
...
...
@@ -2,7 +2,7 @@
> 原文: [http://zetcode.com/gui/vbgtk/menustoolbars/](http://zetcode.com/gui/vbgtk/menustoolbars/)
在 Visual Basic GTK
#
编程教程的这一部分中,我们将使用菜单和工具栏。
在 Visual Basic GTK
#
编程教程的这一部分中,我们将使用菜单和工具栏。
菜单栏是 GUI 应用程序中最常见的部分之一。 它是位于各个菜单中的一组命令。 在控制台应用程序中,我们必须记住许多奥术命令,在这里,我们将大多数命令分组为逻辑部分。 这些公认的标准可进一步减少学习新应用程序的时间。
...
...
@@ -132,7 +132,7 @@ Figure: Simple menu
## 子菜单
我们的最后一个示例演示了如何在 GTK
#
中创建一个子菜单。
我们的最后一个示例演示了如何在 GTK
#
中创建一个子菜单。
```
' ZetCode Mono Visual Basic GTK# tutorial
...
...
@@ -359,7 +359,7 @@ filemenu.Append(inew)
```
`ImageMenuItem`
已创建。 图片来自图片库。 GTK
#
中有一个错误。 Stock.New 与 Visual Basic New 关键字冲突。
`ImageMenuItem`
已创建。 图片来自图片库。 GTK
#
中有一个错误。 Stock.New 与 Visual Basic New 关键字冲突。
```
Dim isep As New SeparatorMenuItem
...
...
@@ -608,7 +608,7 @@ End Class
```
我们的示例从 GTK
#
库存资源创建撤消和重做按钮。 单击几下后,每个按钮均被停用。 按钮显示为灰色。
我们的示例从 GTK
#
库存资源创建撤消和重做按钮。 单击几下后,每个按钮均被停用。 按钮显示为灰色。
```
Private Dim clicks As Integer = 2
...
...
@@ -649,4 +649,4 @@ End If
Figure: Undo redo
在 Visual Basic GTK#教程的这一章中,我们展示了如何使用菜单和工具栏。
\ No newline at end of file
在 Visual Basic GTK# 教程的这一章中,我们展示了如何使用菜单和工具栏。
\ No newline at end of file
docs/gui/248.md
浏览文件 @
bfa91fe8
...
...
@@ -2,7 +2,7 @@
> 原文: [http://zetcode.com/gui/vbgtk/dialogs/](http://zetcode.com/gui/vbgtk/dialogs/)
在 Visual Basic GTK
#
编程教程的这一部分中,我们将介绍对话框。
在 Visual Basic GTK
#
编程教程的这一部分中,我们将介绍对话框。
对话框窗口或对话框是大多数现代 GUI 应用程序必不可少的部分。 对话被定义为两个或更多人之间的对话。 在计算机应用程序中,对话框是一个窗口,用于与应用程序“对话”。 对话框用于输入数据,修改数据,更改应用程序设置等。对话框是用户与计算机程序之间进行通信的重要手段。
...
...
@@ -472,4 +472,4 @@ End If
Figure: ColorSelectionDialog
在 Visual Basic GTK#教程的这一部分中,我们介绍了对话框。
\ No newline at end of file
在 Visual Basic GTK# 教程的这一部分中,我们介绍了对话框。
\ No newline at end of file
docs/gui/249.md
浏览文件 @
bfa91fe8
...
...
@@ -2,7 +2,7 @@
> 原文: [http://zetcode.com/gui/vbgtk/painting/](http://zetcode.com/gui/vbgtk/painting/)
在 Visual Basic GTK
#
教程的这一部分中,我们将使用 Cairo 库进行一些绘画。
在 Visual Basic GTK
#
教程的这一部分中,我们将使用 Cairo 库进行一些绘画。
Cairo 是用于创建 2D 矢量图形的库。 我们可以使用它来绘制自己的小部件,图表或各种效果或动画。
...
...
@@ -649,4 +649,4 @@ cc.ShowText("Most relationships seem so transitory")
Figure: Soulmate
在 Visual Basic GTK#教程的这一章中,我们使用开罗库进行绘画。
\ No newline at end of file
在 Visual Basic GTK# 教程的这一章中,我们使用开罗库进行绘画。
\ No newline at end of file
docs/gui/250.md
浏览文件 @
bfa91fe8
...
...
@@ -277,4 +277,4 @@ End Sub
Figure: Burning widget
在本章中,我们使用 GTK#和 Visual Basic 创建了一个自定义窗口小部件。
\ No newline at end of file
在本章中,我们使用 GTK# 和 Visual Basic 创建了一个自定义窗口小部件。
\ No newline at end of file
docs/gui/251.md
浏览文件 @
bfa91fe8
...
...
@@ -2,11 +2,11 @@
> 原文: [http://zetcode.com/gui/vbgtk/nibbles/](http://zetcode.com/gui/vbgtk/nibbles/)
在 Visual Basic GTK
#
编程教程的这一部分中,我们将创建 Nibbles 游戏克隆。
在 Visual Basic GTK
#
编程教程的这一部分中,我们将创建 Nibbles 游戏克隆。
Nibbles 是较旧的经典视频游戏。 它最初是在 70 年代后期创建的。 后来它被带到 PC 上。 在这个游戏中,玩家控制蛇。 目的是尽可能多地吃苹果。 蛇每次吃一个苹果,它的身体就会长大。 蛇必须避开墙壁和自己的身体。
##
发展历程
##
开发
蛇的每个关节的大小为 10px。 蛇由光标键控制。 最初,蛇具有三个关节。 游戏立即开始。 游戏结束后,我们在窗口中心显示“ Game Over”消息。
...
...
@@ -503,4 +503,4 @@ vbnc -r:/usr/lib/mono/gtk-sharp-2.0/gtk-sharp.dll
```
这是使用 GTK#库和 Visual Basic 编程语言编写的 Nibbles 电脑游戏。
\ No newline at end of file
这是使用 GTK# 库和 Visual Basic 编程语言编写的 Nibbles 电脑游戏。
\ No newline at end of file
docs/gui/253.md
浏览文件 @
bfa91fe8
...
...
@@ -24,7 +24,7 @@ PyGTK 由几个模块组成。
## GTK+
![](
img/953782da5a9817d9d1f8249b3cec49e7.jpg
)
GTK+ 是用于创建图形用户界面的库。 该库是用 C 编程语言创建的。 GTK+ 库也称为 GIMP Toolkit。 最初,该库是在开发 GIMP 图像处理程序时创建的。 从那时起,GTK+ 成为 Linux 和 BSD Unix 下最受欢迎的工具包之一。 如今,开源世界中的大多数 GUI 软件都是在 Qt 或 GTK+ 中创建的。 GTK+ 是面向对象的应用程序编程接口。 面向对象的系统是使用 Glib 对象系统创建的,该系统是 GTK+ 库的基础。
`GObject`
还可以为其他各种编程语言创建语言绑定。 存在用于 C++ ,Python,Perl,Java,C
#
和其他编程语言的语言绑定。
![](
img/953782da5a9817d9d1f8249b3cec49e7.jpg
)
GTK+ 是用于创建图形用户界面的库。 该库是用 C 编程语言创建的。 GTK+ 库也称为 GIMP Toolkit。 最初,该库是在开发 GIMP 图像处理程序时创建的。 从那时起,GTK+ 成为 Linux 和 BSD Unix 下最受欢迎的工具包之一。 如今,开源世界中的大多数 GUI 软件都是在 Qt 或 GTK+ 中创建的。 GTK+ 是面向对象的应用程序编程接口。 面向对象的系统是使用 Glib 对象系统创建的,该系统是 GTK+ 库的基础。
`GObject`
还可以为其他各种编程语言创建语言绑定。 存在用于 C++ ,Python,Perl,Java,C
#
和其他编程语言的语言绑定。
Gnome 和 XFce 桌面环境已使用 GTK+ 库创建。 SWT 和 wxWidgets 是使用 GTK+ 的众所周知的编程框架。 使用 GTK+ 的著名软件应用程序包括 Firefox 或 Inkscape。
...
...
docs/gui/267.md
浏览文件 @
bfa91fe8
...
...
@@ -8,7 +8,7 @@
Snake 是较旧的经典视频游戏。 它最初是在 70 年代后期创建的。 后来它被带到 PC 上。 在这个游戏中,玩家控制蛇。 目的是尽可能多地吃苹果。 蛇每次吃一个苹果,它的身体就会长大。 蛇必须避开墙壁和自己的身体。 该游戏有时称为 Nibbles 。
##
发展历程
##
开发
蛇的每个关节的大小为 10px。 蛇由光标键控制。 最初,蛇具有三个关节。 游戏立即开始。 如果游戏结束,我们将在棋盘中间显示“ Game Over”消息。
...
...
docs/gui/269.md
浏览文件 @
bfa91fe8
...
...
@@ -21,7 +21,7 @@
## GTK
GTK 是用于创建图形用户界面的库。 该库是用 C 编程语言创建的。 GTK 库也称为 GIMP Toolkit。 最初,该库是在开发 GIMP 图像处理程序时创建的。 从那时起,GTK 成为 Linux 和 BSD Unix 下最受欢迎的工具包之一。 如今,开源世界中的大多数 GUI 软件都是在 Qt 或 GTK 中创建的。 存在用于 C++ ,Python,PHP,Perl,Java,C
#
和其他编程语言的语言绑定。
GTK 是用于创建图形用户界面的库。 该库是用 C 编程语言创建的。 GTK 库也称为 GIMP Toolkit。 最初,该库是在开发 GIMP 图像处理程序时创建的。 从那时起,GTK 成为 Linux 和 BSD Unix 下最受欢迎的工具包之一。 如今,开源世界中的大多数 GUI 软件都是在 Qt 或 GTK 中创建的。 存在用于 C++ ,Python,PHP,Perl,Java,C
#
和其他编程语言的语言绑定。
## 相关教程
...
...
docs/gui/277.md
浏览文件 @
bfa91fe8
...
...
@@ -6,7 +6,7 @@
Nibbles 是较旧的经典视频游戏。 它最初是在 70 年代后期创建的。 后来它被带到 PC 上。 在这个游戏中,玩家控制蛇。 目的是尽可能多地吃苹果。 蛇每次吃一个苹果,它的身体就会长大。 蛇必须避开墙壁和自己的身体。
##
发展历程
##
开发
蛇的每个关节的大小为 10px。 蛇由光标键控制。 最初,蛇具有三个关节。 游戏立即开始。 游戏结束后,我们在窗口中心显示“ Game Over”消息。
...
...
docs/gui/278.md
浏览文件 @
bfa91fe8
# C
#
Qyoto 教程
# C
#
Qyoto 教程
> 原文: [http://zetcode.com/gui/csharpqyoto/](http://zetcode.com/gui/csharpqyoto/)
这是 C
#Qyoto 编程教程。 Qyoto 是 Qt 库与 C#和其他.NET 语言的绑定。 Qyoto C#
教程适合初学者和中级程序员。
这是 C
# Qyoto 编程教程。 Qyoto 是 Qt 库与 C# 和其他.NET 语言的绑定。 Qyoto C#
教程适合初学者和中级程序员。
## 目录
...
...
@@ -22,12 +22,12 @@
## 京都
Qyoto 是一个库,它提供 Qt 库与.NET 语言(如 C
#
或 Visual Basic)的绑定。 Qt 是功能强大的跨平台应用程序开发框架。 它的母语是 C++ 。 Qyoto 是 KDE 桌面环境的一部分。
Qyoto 是一个库,它提供 Qt 库与.NET 语言(如 C
#
或 Visual Basic)的绑定。 Qt 是功能强大的跨平台应用程序开发框架。 它的母语是 C++ 。 Qyoto 是 KDE 桌面环境的一部分。
## C
#
## C
#
C
#
是一种现代的,高级的,通用的,面向对象的编程语言。 它是.NET 框架的主要语言。 该语言的设计目标是软件健壮性,耐用性和程序员生产率。 它可用于在 PC 或嵌入式系统上创建控制台应用程序,GUI 应用程序,Web 应用程序。
C
#
是一种现代的,高级的,通用的,面向对象的编程语言。 它是.NET 框架的主要语言。 该语言的设计目标是软件健壮性,耐用性和程序员生产率。 它可用于在 PC 或嵌入式系统上创建控制台应用程序,GUI 应用程序,Web 应用程序。
## 相关教程
[
C#教程
](
/lang/csharp/
)
涵盖了 C#语言。
[
GTK#教程
](
/gui/gtksharp/
)
提供了 C#绑定到 GTK 库的教程。
[
Mono C#Winforms 教程
](
/gui/csharpwinforms/
)
是使用 Winforms 库和 C#语言对 GUI 应用程序进行编程的教程。 最后,
[
Visual Basic Qyoto 教程
](
/gui/vbqyoto/
)
是使用 Visual Basic 开发 Qyoto 应用程序的教程。
\ No newline at end of file
[
C# 教程
](
/lang/csharp/
)
涵盖了 C# 语言。
[
GTK# 教程
](
/gui/gtksharp/
)
提供了 C# 绑定到 GTK 库的教程。
[
Mono C# Winforms 教程
](
/gui/csharpwinforms/
)
是使用 Winforms 库和 C# 语言对 GUI 应用程序进行编程的教程。 最后,
[
Visual Basic Qyoto 教程
](
/gui/vbqyoto/
)
是使用 Visual Basic 开发 Qyoto 应用程序的教程。
\ No newline at end of file
docs/gui/279.md
浏览文件 @
bfa91fe8
...
...
@@ -2,13 +2,13 @@
> 原文: [http://zetcode.com/gui/csharpqyoto/introduction/](http://zetcode.com/gui/csharpqyoto/introduction/)
在 Qyoto C
#编程教程的这一部分中,我们将介绍并构建 Qyoto 库。 我们使用 C#
编程语言创建第一个 Qyoto 程序。
在 Qyoto C
# 编程教程的这一部分中,我们将介绍并构建 Qyoto 库。 我们使用 C#
编程语言创建第一个 Qyoto 程序。
本教程的目的是帮助您开始使用 Qyoto 和 C
#
。 可以在此处下载本教程中使用的图像。 我使用了 Gnome 项目的探戈图标包中的一些图标。 该教程是在 Qyoto 项目的维护者 Dimitar Dobrev 的帮助下创建的。
本教程的目的是帮助您开始使用 Qyoto 和 C
#
。 可以在此处下载本教程中使用的图像。 我使用了 Gnome 项目的探戈图标包中的一些图标。 该教程是在 Qyoto 项目的维护者 Dimitar Dobrev 的帮助下创建的。
## 关于
Qyoto 是一个库,它提供 Qt 库与.NET 语言(如 C
#
或 Visual Basic)的绑定。 Qt 是功能强大的跨平台应用程序开发框架。 它的母语是 C++ 。 Qyoto 是 KDE 桌面环境的一部分。 Qyoto 是使用
`SMOKE`
库创建的。 这是一个 KDE 项目,用于创建多种语言的绑定。 SMOKE 代表脚本元对象 Kompiler 引擎。
Qyoto 是一个库,它提供 Qt 库与.NET 语言(如 C
#
或 Visual Basic)的绑定。 Qt 是功能强大的跨平台应用程序开发框架。 它的母语是 C++ 。 Qyoto 是 KDE 桌面环境的一部分。 Qyoto 是使用
`SMOKE`
库创建的。 这是一个 KDE 项目,用于创建多种语言的绑定。 SMOKE 代表脚本元对象 Kompiler 引擎。
## 在 Linux 上构建 Qyoto
...
...
@@ -58,7 +58,7 @@ $ dmcs -r:/usr/local/lib/mono/qyoto/qyoto-qtcore.dll \
```
上面的命令显示了如何编译甜甜圈示例。 mono C
#
编译器的
`-r`
参数加载 Qt 程序集。 这是一个动态库。 该命令显示 Linux 系统上 dll 库的路径。
上面的命令显示了如何编译甜甜圈示例。 mono C
#
编译器的
`-r`
参数加载 Qt 程序集。 这是一个动态库。 该命令显示 Linux 系统上 dll 库的路径。
## 创建工具提示
...
...
@@ -369,4 +369,4 @@ quit.SetGeometry(50, 40, 80, 30);
Figure: Quit button
本节介绍了使用 C#语言编写的 Qyoto 库。
\ No newline at end of file
本节介绍了使用 C# 语言编写的 Qyoto 库。
\ No newline at end of file
docs/gui/280.md
浏览文件 @
bfa91fe8
...
...
@@ -2,7 +2,7 @@
> 原文: [http://zetcode.com/gui/csharpqyoto/layoutmanagement/](http://zetcode.com/gui/csharpqyoto/layoutmanagement/)
在 Qyoto C
#
编程教程的这一部分中,我们将介绍布局管理器。
在 Qyoto C
#
编程教程的这一部分中,我们将介绍布局管理器。
在设计应用程序的 GUI 时,我们决定要使用哪些组件以及如何在应用程序中组织这些组件。 为了组织我们的组件,我们使用专门的不可见对象,称为布局管理器。 Qyoto 中有多个选项。 我们可以使用绝对定位,内置布局管理器或创建自定义布局管理器。 我们还可以使用 Qt Designer 直观地构建布局。
...
...
@@ -431,4 +431,4 @@ grid.SetColumnStretch(1, 1);
Figure: New Folder example
在 Qyoto C#教程的这一部分中,我们提到了小部件的布局管理。
\ No newline at end of file
在 Qyoto C# 教程的这一部分中,我们提到了小部件的布局管理。
\ No newline at end of file
docs/gui/281.md
浏览文件 @
bfa91fe8
...
...
@@ -2,7 +2,7 @@
> 原文: [http://zetcode.com/gui/csharpqyoto/widgets/](http://zetcode.com/gui/csharpqyoto/widgets/)
在 Qyoto C
#
编程教程的这一部分中,我们将介绍 Qyoto 小部件。
在 Qyoto C
#
编程教程的这一部分中,我们将介绍 Qyoto 小部件。
小部件是 GUI 应用程序的基本构建块。 多年来,几个小部件已成为所有 OS 平台上所有工具包中的标准。 例如,按钮,复选框或滚动条。 Qyoto 有一组丰富的小部件,可以满足大多数编程需求。 可以将更多专门的窗口小部件创建为自定义窗口小部件。
...
...
@@ -205,7 +205,7 @@ string text = @"Meet you downstairs in the bar and heard
```
我们定义了多行文字。 多行文本在 C
#
语言中以@字符开头。
我们定义了多行文字。 多行文本在 C
#
语言中以@字符开头。
```
QLabel label = new QLabel(text, this);
...
...
@@ -511,7 +511,7 @@ string sheet = System.String.Format("QWidget {{ background-color: {0} }}",
```
我们使用 C
#
Format 方法创建适当的样式表。
我们使用 C
#
Format 方法创建适当的样式表。
```
square.StyleSheet = sheet;
...
...
@@ -645,4 +645,4 @@ public void OnActivated(string text)
Figure: QComboBox widget
在 Qyoto C#教程的这一部分中,我们介绍了几个 Qyoto 小部件。
\ No newline at end of file
在 Qyoto C# 教程的这一部分中,我们介绍了几个 Qyoto 小部件。
\ No newline at end of file
docs/gui/282.md
浏览文件 @
bfa91fe8
...
...
@@ -2,7 +2,7 @@
> 原文: [http://zetcode.com/gui/csharpqyoto/menustoolbars/](http://zetcode.com/gui/csharpqyoto/menustoolbars/)
在 Qyoto C
#
编程教程的这一部分中,我们将使用菜单和工具栏。
在 Qyoto C
#
编程教程的这一部分中,我们将使用菜单和工具栏。
菜单栏是 GUI 应用程序中最可见的部分之一。 它是位于各个菜单中的一组命令。 菜单将我们可以在应用程序中使用的命令分组。 使用工具栏可以快速访问最常用的命令。
...
...
@@ -542,4 +542,4 @@ if (count <= 0)
Figure: Undo redo
在 Qyoto C#教程的这一部分中,我们提到了菜单和工具栏。
\ No newline at end of file
在 Qyoto C# 教程的这一部分中,我们提到了菜单和工具栏。
\ No newline at end of file
docs/gui/283.md
浏览文件 @
bfa91fe8
...
...
@@ -2,7 +2,7 @@
> 原文: [http://zetcode.com/gui/csharpqyoto/dialogs/](http://zetcode.com/gui/csharpqyoto/dialogs/)
在 Qyoto C
#
编程教程的这一部分中,我们将使用对话框。
在 Qyoto C
#
编程教程的这一部分中,我们将使用对话框。
对话框窗口或对话框是大多数现代 GUI 应用程序必不可少的部分。 对话被定义为两个或更多人之间的对话。 在计算机应用程序中,对话框是一个窗口,用于与应用程序“对话”。 对话框用于输入数据,修改数据,更改应用程序设置等。对话框是用户与计算机程序之间进行通信的重要手段。
...
...
@@ -415,4 +415,4 @@ label.Font = font;
Figure: QFontDialog
在 Qyoto C#教程的这一部分中,我们使用了对话框窗口。
\ No newline at end of file
在 Qyoto C# 教程的这一部分中,我们使用了对话框窗口。
\ No newline at end of file
docs/gui/284.md
浏览文件 @
bfa91fe8
...
...
@@ -2,7 +2,7 @@
> 原文: [http://zetcode.com/gui/csharpqyoto/painting/](http://zetcode.com/gui/csharpqyoto/painting/)
在 Qyoto C
#
编程教程的这一部分中,我们将进行绘画。
在 Qyoto C
#
编程教程的这一部分中,我们将进行绘画。
当我们在京都进行绘画时,
`QPainter`
类非常有用。 绘画事件通过
`OnPaintEvent()`
方法接收。 若要进行自定义绘画,我们必须重新实现此方法。
...
...
@@ -487,4 +487,4 @@ ptr.DrawText(new QPoint(20, 30),
Figure: Drawing text
在 Qyoto C#编程教程的这一部分中,我们做了一些绘画。
\ No newline at end of file
在 Qyoto C# 编程教程的这一部分中,我们做了一些绘画。
\ No newline at end of file
docs/gui/285.md
浏览文件 @
bfa91fe8
...
...
@@ -2,7 +2,7 @@
> 原文: [http://zetcode.com/gui/csharpqyoto/paintingII/](http://zetcode.com/gui/csharpqyoto/paintingII/)
在 Qyoto C
#
编程教程的这一部分中,我们将继续绘画。 我们将提供一些更复杂的示例。
在 Qyoto C
#
编程教程的这一部分中,我们将继续绘画。 我们将提供一些更复杂的示例。
## 甜甜圈形状
...
...
@@ -594,4 +594,4 @@ protected override void OnTimerEvent(QTimerEvent e)
Figure: Waiting effect
在 Qyoto C#编程教程的这一部分中,我们结束了有关在 Qyoto 中绘画的讨论。
\ No newline at end of file
在 Qyoto C# 编程教程的这一部分中,我们结束了有关在 Qyoto 中绘画的讨论。
\ No newline at end of file
docs/gui/286.md
浏览文件 @
bfa91fe8
...
...
@@ -2,7 +2,7 @@
> 原文: [http://zetcode.com/gui/csharpqyoto/customwidget/](http://zetcode.com/gui/csharpqyoto/customwidget/)
在 Qyoto C
#
编程教程的这一部分中,我们将展示如何创建自定义窗口小部件。
在 Qyoto C
#
编程教程的这一部分中,我们将展示如何创建自定义窗口小部件。
大多数工具包通常仅提供最常用的窗口小部件,例如按钮,文本窗口小部件,滑块等。没有工具箱可以提供所有可能的窗口小部件。 程序员必须自己创建此类小部件。 他们使用工具箱提供的绘图工具来完成此任务。 有两种可能性。 程序员可以修改或增强现有的小部件。 或者,他可以从头开始创建自定义窗口小部件。
...
...
@@ -571,4 +571,4 @@ else if ( text == "Warning")
Figure: The Led widget showing the Off state
在 Qyoto C#教程的这一部分中,我们演示了如何创建自定义窗口小部件。
\ No newline at end of file
在 Qyoto C# 教程的这一部分中,我们演示了如何创建自定义窗口小部件。
\ No newline at end of file
docs/gui/287.md
浏览文件 @
bfa91fe8
...
...
@@ -2,11 +2,11 @@
> 原文: [http://zetcode.com/gui/csharpqyoto/nibbles/](http://zetcode.com/gui/csharpqyoto/nibbles/)
在 Qyoto C
#
编程教程的这一部分中,我们将创建 Nibbles 游戏克隆。
在 Qyoto C
#
编程教程的这一部分中,我们将创建 Nibbles 游戏克隆。
`Nibbles`
是较旧的经典视频游戏。 它最初是在 70 年代后期创建的。 后来它被带到 PC 上。 在这个游戏中,玩家控制蛇。 目的是尽可能多地吃苹果。 蛇每次吃一个苹果,它的身体就会长大。 蛇必须避开墙壁和自己的身体。
##
发展历程
##
开发
蛇的每个关节的大小为 10px。 蛇由光标键控制。 最初,蛇具有三个关节。 游戏立即开始。 游戏结束后,我们在窗口中心显示“ Game Over”消息。
...
...
@@ -450,4 +450,4 @@ public class QyotoApp : QMainWindow
Figure: Nibbles
这是用 Qyoto 库和 C#编程语言编程的 Nibbles 电脑游戏。
\ No newline at end of file
这是用 Qyoto 库和 C# 编程语言编程的 Nibbles 电脑游戏。
\ No newline at end of file
docs/gui/296.md
浏览文件 @
bfa91fe8
...
...
@@ -6,7 +6,7 @@
Nibbles 是较旧的经典视频游戏。 它最初是在 70 年代后期创建的。 后来它被带到 PC 上。 在这个游戏中,玩家控制蛇。 目的是尽可能多地吃苹果。 蛇每次吃一个苹果,它的身体就会长大。 蛇必须避开墙壁和自己的身体。
##
发展历程
##
开发
蛇的每个关节的大小为 10px。 蛇由光标键控制。 最初,蛇具有三个关节。 游戏立即开始。 游戏结束后,我们在窗口中心显示“ Game Over”消息。
...
...
docs/gui/297.md
浏览文件 @
bfa91fe8
...
...
@@ -21,7 +21,7 @@
## 京都
Qyoto 是一个库,它提供 Qt 库与.NET 语言(如 C
#
或 Visual Basic)的绑定。 Qt 是功能强大的跨平台应用程序开发框架。 它的母语是 C++ 。 Qyoto 是 KDE 桌面环境的一部分。
Qyoto 是一个库,它提供 Qt 库与.NET 语言(如 C
#
或 Visual Basic)的绑定。 Qt 是功能强大的跨平台应用程序开发框架。 它的母语是 C++ 。 Qyoto 是 KDE 桌面环境的一部分。
## Visual Basic
...
...
@@ -29,4 +29,4 @@ Visual Basic 是.NET Framework 的高级编程语言。 这是一种非常流行
## 相关教程
我们在 ZetCode 上有完整的
[
Visual Basic 教程
](
/lang/visualbasic/
)
。 其他 GUI 工具包的 Visual Basic 教程包括
[
Visual Basic GTK#教程
](
/gui/vbgtk/
)
和
[
Visual Basic Winforms 教程
](
/tutorials/visualbasicwinformstutorial/
)
。 另外,还有一个针对 C#语言的 Qyoto 教程:
[
Qyoto C#教程
](
/gui/csharpqyoto/
)
。
\ No newline at end of file
我们在 ZetCode 上有完整的
[
Visual Basic 教程
](
/lang/visualbasic/
)
。 其他 GUI 工具包的 Visual Basic 教程包括
[
Visual Basic GTK# 教程
](
/gui/vbgtk/
)
和
[
Visual Basic Winforms 教程
](
/tutorials/visualbasicwinformstutorial/
)
。 另外,还有一个针对 C# 语言的 Qyoto 教程:
[
Qyoto C# 教程
](
/gui/csharpqyoto/
)
。
\ No newline at end of file
docs/gui/298.md
浏览文件 @
bfa91fe8
...
...
@@ -8,7 +8,7 @@
## 关于
`Qyoto`
是一个库,提供 Qt 库与.NET 语言(如 C
#
或 Visual Basic)的绑定。 Qt 是功能强大的跨平台应用程序开发框架。 它的母语是 C++ 。 Qyoto 是 KDE 桌面环境的一部分。
`Qyoto`
是一个库,提供 Qt 库与.NET 语言(如 C
#
或 Visual Basic)的绑定。 Qt 是功能强大的跨平台应用程序开发框架。 它的母语是 C++ 。 Qyoto 是 KDE 桌面环境的一部分。
```
vbnc -r:/usr/lib/cli/qyoto-4.3/qt-dotnet.dll quitbutton.vb
...
...
docs/gui/300.md
浏览文件 @
bfa91fe8
...
...
@@ -200,7 +200,7 @@ text = "Meet you downstairs in the bar and heard" + vbNewLine + _
```
我们定义了多行文字。 与 C
#
,Python 或 Ruby 不同,没有简单的结构可以用 Visual Basic 语言创建多行文本。 若要在 Visual Basic 中创建多行文本,我们使用
`vbNewLine`
打印常量,
`+`
串联字符和
`_`
行终止字符。
我们定义了多行文字。 与 C
#
,Python 或 Ruby 不同,没有简单的结构可以用 Visual Basic 语言创建多行文本。 若要在 Visual Basic 中创建多行文本,我们使用
`vbNewLine`
打印常量,
`+`
串联字符和
`_`
行终止字符。
```
Dim label As New QLabel(text, Me)
...
...
docs/gui/305.md
浏览文件 @
bfa91fe8
...
...
@@ -6,7 +6,7 @@
Nibbles 是较旧的经典视频游戏。 它最初是在 70 年代后期创建的。 后来它被带到 PC 上。 在这个游戏中,玩家控制蛇。 目的是尽可能多地吃苹果。 蛇每次吃一个苹果,它的身体就会长大。 蛇必须避开墙壁和自己的身体。
##
发展历程
##
开发
蛇的每个关节的大小为 10px。 蛇由光标键控制。 最初,蛇具有三个关节。 游戏立即开始。 游戏结束后,我们在窗口中心显示“ Game Over”消息。
...
...
docs/gui/306.md
浏览文件 @
bfa91fe8
...
...
@@ -26,4 +26,4 @@ Windows Forms 是图形用户界面应用程序编程接口(API),包含在
## 相关教程
在 ZetCode 上有有关 Winforms 库的其他绑定的教程。
[
Mono C#Winforms 教程
](
/gui/csharpwinforms/
)
和
[
Visual Basic Winforms 教程
](
/gui/vbwinforms/
)
。
\ No newline at end of file
在 ZetCode 上有有关 Winforms 库的其他绑定的教程。
[
Mono C# Winforms 教程
](
/gui/csharpwinforms/
)
和
[
Visual Basic Winforms 教程
](
/gui/vbwinforms/
)
。
\ No newline at end of file
docs/gui/307.md
浏览文件 @
bfa91fe8
...
...
@@ -10,7 +10,7 @@ IronPython Mono Winforms 教程的第一部分介绍了 Mono 平台和 Winforms
## 单声道
Mono 是由 Xamarin 赞助的一项开放开发计划,目的是开发 Microsoft.NET 开发平台的开源 UNIX 版本。 它是.NET 兼容的工具集,其中包括 C
#
编译器,公共语言运行库,ADO.NET,ASP.NET 和 Winforms 库。
Mono 是由 Xamarin 赞助的一项开放开发计划,目的是开发 Microsoft.NET 开发平台的开源 UNIX 版本。 它是.NET 兼容的工具集,其中包括 C
#
编译器,公共语言运行库,ADO.NET,ASP.NET 和 Winforms 库。
单声道可分为三组:
...
...
@@ -18,9 +18,9 @@ Mono 是由 Xamarin 赞助的一项开放开发计划,目的是开发 Microsof
*
侏儒开发栈
*
Microsoft 兼容性堆栈
核心组件是 C
#语言和公共语言运行时。 Gnome 开发堆栈包括 GTK#
库和各种数据库连接库。 最后,Microsoft 兼容性堆栈包括 ADO.NET,ASP.NET 和 Winforms 库。
核心组件是 C
# 语言和公共语言运行时。 Gnome 开发堆栈包括 GTK#
库和各种数据库连接库。 最后,Microsoft 兼容性堆栈包括 ADO.NET,ASP.NET 和 Winforms 库。
Mono 是多平台编程平台。 它可以在 Linux,BSD,Mac OS X,Solaris 和 Windows 操作系统上运行。 这是一种多语言的工作。 目前,仅完全支持 C
#
语言。 诸如 Visual Basic 或 IronPython 之类的语言尚未完成。 它们仍在开发中。
Mono 是多平台编程平台。 它可以在 Linux,BSD,Mac OS X,Solaris 和 Windows 操作系统上运行。 这是一种多语言的工作。 目前,仅完全支持 C
#
语言。 诸如 Visual Basic 或 IronPython 之类的语言尚未完成。 它们仍在开发中。
## Winforms
...
...
@@ -28,7 +28,7 @@ Windows Forms 是图形用户界面应用程序编程接口(API),包含在
## 铁蟒
IronPython 是.NET Framework 和 Mono 的 Python 编程语言的实现。 IronPython 完全用 C
#
编写。 Python 和 IronPython 之间有一些明显的区别。
IronPython 是.NET Framework 和 Mono 的 Python 编程语言的实现。 IronPython 完全用 C
#
编写。 Python 和 IronPython 之间有一些明显的区别。
## 运行代码示例
...
...
docs/gui/31.md
浏览文件 @
bfa91fe8
...
...
@@ -18,7 +18,7 @@ PyQt5 是旨在创建应用的工具包。 还有其他一些旨在创建计算
创建计算机游戏是增强编程技能的好方法。
##
发展历程
##
开发
我们的俄罗斯方块游戏没有图像,我们使用 PyQt5 编程工具包中提供的绘图 API 绘制四面体。 每个计算机游戏的背后都有一个数学模型。 俄罗斯方块也是如此。
...
...
docs/gui/314.md
浏览文件 @
bfa91fe8
...
...
@@ -301,7 +301,7 @@ Application.Run(IForm())
```
我们使用
`OpenDialog`
控件打开 C
#
源文件。 我们有一个
`TextBox`
控件,用于显示文件。
我们使用
`OpenDialog`
控件打开 C
#
源文件。 我们有一个
`TextBox`
控件,用于显示文件。
```
dialog = OpenFileDialog()
...
...
@@ -315,7 +315,7 @@ dialog.Filter = "C# files (*.cs)|*.cs"
```
我们将
`Filter`
属性设置为 C
#源文件。 此对话框实例只能选择 C#
文件。
我们将
`Filter`
属性设置为 C
# 源文件。 此对话框实例只能选择 C#
文件。
```
if dialog.ShowDialog(self) == DialogResult.OK:
...
...
docs/gui/318.md
浏览文件 @
bfa91fe8
...
...
@@ -8,7 +8,7 @@
Snake 是较旧的经典视频游戏。 它最初是在 70 年代后期创建的。 后来它被带到 PC 上。 在这个游戏中,玩家控制蛇。 目的是尽可能多地吃苹果。 蛇每次吃一个苹果,它的身体就会长大。 蛇必须避开墙壁和自己的身体。 该游戏有时称为 Nibbles 。
##
发展历程
##
开发
蛇的每个关节的大小为 10px。 蛇由光标键控制。 最初,蛇具有三个关节。 游戏立即开始。 如果游戏结束,我们将在棋盘中间显示 Game Over 消息。
...
...
docs/gui/319.md
浏览文件 @
bfa91fe8
...
...
@@ -10,7 +10,7 @@
Figure: Tetrominoes
##
发展历程
##
开发
我们的俄罗斯方块游戏没有图像,我们使用 Winforms 库中可用的绘图 API 绘制四聚体。 每个计算机游戏的背后都有一个数学模型。 在俄罗斯方块中也是如此。
...
...
docs/gui/320.md
浏览文件 @
bfa91fe8
...
...
@@ -4,7 +4,7 @@
这是 FreeBASIC GTK 教程。 在本教程中,我们将使用 FreeBASIC 语言在 GTK 库中创建图形用户界面。 本教程适合初学者。 一旦了解了基础知识并且知道如何一起使用 GTK 和 FreeBASIC,您就可以继续从
[
GTK+ 教程
](
/tutorials/gtktutorial/
)
中学习 GTK 库。
FreeBASIC 与与 GTK 一起使用的其他语言不同。 没有像 PyGTK 或 GTK
#
这样的绑定。 在 FreeBASIC 中,我们直接在程序中调用 C 代码。 这样,FreeBASIC 与 C 语言紧密相连。
FreeBASIC 与与 GTK 一起使用的其他语言不同。 没有像 PyGTK 或 GTK
#
这样的绑定。 在 FreeBASIC 中,我们直接在程序中调用 C 代码。 这样,FreeBASIC 与 C 语言紧密相连。
## FreeBASIC 的
...
...
@@ -12,7 +12,7 @@ FreeBASIC 是一种流行的 BASIC(初学者的通用符号指令代码)编
## GTK
GTK 是用于创建图形用户界面的库。 该库是用 C 编程语言创建的。 GTK 库也称为 GIMP Toolkit。 最初,该库是在开发 GIMP 图像处理程序时创建的。 从那时起,GTK 成为 Linux 和 BSD Unix 下最受欢迎的工具包之一。 如今,开源世界中的大多数 GUI 软件都是在 Qt 或 GTK 中创建的。 存在用于 C++ ,Python,Perl,Java,C
#
和其他编程语言的语言绑定。
GTK 是用于创建图形用户界面的库。 该库是用 C 编程语言创建的。 GTK 库也称为 GIMP Toolkit。 最初,该库是在开发 GIMP 图像处理程序时创建的。 从那时起,GTK 成为 Linux 和 BSD Unix 下最受欢迎的工具包之一。 如今,开源世界中的大多数 GUI 软件都是在 Qt 或 GTK 中创建的。 存在用于 C++ ,Python,Perl,Java,C
#
和其他编程语言的语言绑定。
## 第一个例子
...
...
docs/gui/328.md
浏览文件 @
bfa91fe8
...
...
@@ -6,7 +6,7 @@
Nibbles 是较旧的经典视频游戏。 它最初是在 70 年代后期创建的。 后来它被带到 PC 上。 在这个游戏中,玩家控制蛇。 目的是尽可能多地吃苹果。 蛇每次吃一个苹果,它的身体就会长大。 蛇必须避开墙壁和自己的身体。
##
发展历程
##
开发
蛇的每个关节的大小为 10px。 蛇由光标键控制。 最初,蛇具有三个关节。 游戏立即开始。 游戏结束后,我们在窗口中心显示“ Game Over”消息。
...
...
docs/gui/336.md
浏览文件 @
bfa91fe8
...
...
@@ -6,7 +6,7 @@
Nibbles 是较旧的经典视频游戏。 它最初是在 70 年代后期创建的。 后来它被带到 PC 上。 在这个游戏中,玩家控制蛇。 目的是尽可能多地吃苹果。 蛇每次吃一个苹果,它的身体就会长大。 蛇必须避开墙壁和自己的身体。
##
发展历程
##
开发
蛇的每个关节的大小为 10px。 蛇由光标键控制。 最初,蛇具有三个关节。 游戏立即开始。 游戏结束后,我们在窗口中心显示“ Game Over”消息。
...
...
docs/gui/337.md
浏览文件 @
bfa91fe8
...
...
@@ -24,4 +24,4 @@
Windows Forms 是图形用户界面应用程序编程接口(API),包含在 Microsoft .NET Framework 中。 截至 2008 年 5 月 13 日,Mono 的 System.Windows.Forms 2.0 已完成 API。 简而言之,Winforms 是一个用于创建 GUI 应用程序的库。
在 ZetCode 上有
[
Visual Basic 教程
](
/lang/visualbasic/
)
。
[
Mono C#Winforms 教程
](
/gui/csharpwinforms/
)
是使用姐妹语言的 Winforms 库的教程。 涵盖其他 Visual Basic GUI 库的教程包括
[
Visual Basic Qyoto 教程
](
/gui/vbqyoto/
)
和
[
Visual Basic GTK#教程
](
/gui/vbgtk/
)
。
\ No newline at end of file
在 ZetCode 上有
[
Visual Basic 教程
](
/lang/visualbasic/
)
。
[
Mono C# Winforms 教程
](
/gui/csharpwinforms/
)
是使用姐妹语言的 Winforms 库的教程。 涵盖其他 Visual Basic GUI 库的教程包括
[
Visual Basic Qyoto 教程
](
/gui/vbqyoto/
)
和
[
Visual Basic GTK# 教程
](
/gui/vbgtk/
)
。
\ No newline at end of file
docs/gui/338.md
浏览文件 @
bfa91fe8
...
...
@@ -10,7 +10,7 @@
Windows 窗体是图形用户界面应用程序编程接口(API),包含在 Microsoft .NET Framework 中。 截至 2008 年 5 月 13 日,Mono 的 System.Windows.Forms 2.0 已完成 API。 简而言之,Winforms 是一个用于创建 GUI 应用程序的库。
Mono 是一个跨平台的开源.NET 开发框架。 它是.NET 兼容的工具集,其中包括 C
#
编译器,Visual Basic 编译器,公共语言运行时,ADO.NET,ASP.NET 和 Winforms 库。
Mono 是一个跨平台的开源.NET 开发框架。 它是.NET 兼容的工具集,其中包括 C
#
编译器,Visual Basic 编译器,公共语言运行时,ADO.NET,ASP.NET 和 Winforms 库。
```
vbnc -r:/usr/lib/mono/2.0/System.Windows.Forms.dll quitbutton.vb
...
...
docs/gui/340.md
浏览文件 @
bfa91fe8
...
...
@@ -81,7 +81,7 @@ End Class
```
我们定义了多行文字。 与 C
#
,Python 或 Ruby 不同,没有简单的结构可以用 Visual Basic 语言创建多行文本。 若要在 Visual Basic 中创建多行文本,我们使用
`vbNewLine`
打印常量,
`+`
串联字符和
`_`
行终止字符。
我们定义了多行文字。 与 C
#
,Python 或 Ruby 不同,没有简单的结构可以用 Visual Basic 语言创建多行文本。 若要在 Visual Basic 中创建多行文本,我们使用
`vbNewLine`
打印常量,
`+`
串联字符和
`_`
行终止字符。
```
Dim label As New Label
...
...
docs/gui/346.md
浏览文件 @
bfa91fe8
...
...
@@ -8,7 +8,7 @@
Nibbles 是较旧的经典视频游戏。 它最初是在 70 年代后期创建的。 后来它被带到 PC 上。 在这个游戏中,玩家控制蠕虫。 目的是尽可能多地吃苹果。 蠕虫每次吃一个苹果,它的身体就会长大。 它必须避开墙壁和自己的身体。
##
发展历程
##
开发
蠕虫每个关节的大小为 10 像素。 蠕虫由光标键控制。 最初,蠕虫具有三个关节。 通过按下光标键之一开始游戏。 如果游戏结束,我们将在棋盘中间显示 Game Over 消息。
...
...
docs/gui/347.md
浏览文件 @
bfa91fe8
...
...
@@ -19,10 +19,10 @@
## GTK
GTK 是用于创建图形用户界面的库。 该库是用 C 编程语言创建的。 GTK 库也称为 GIMP Toolkit。 最初,该库是在开发 GIMP 图像处理程序时创建的。 从那时起,GTK 成为 Linux 和 BSD Unix 下最受欢迎的工具包之一。 如今,开源世界中的大多数 GUI 软件都是在 Qt 或 GTK 中创建的。 语言绑定适用于 C++ ,Python,Perl,Java,C
#
,JavaScript,PHP 和其他编程语言。
GTK 是用于创建图形用户界面的库。 该库是用 C 编程语言创建的。 GTK 库也称为 GIMP Toolkit。 最初,该库是在开发 GIMP 图像处理程序时创建的。 从那时起,GTK 成为 Linux 和 BSD Unix 下最受欢迎的工具包之一。 如今,开源世界中的大多数 GUI 软件都是在 Qt 或 GTK 中创建的。 语言绑定适用于 C++ ,Python,Perl,Java,C
#
,JavaScript,PHP 和其他编程语言。
[
Tweet
](
https://twitter.com/share
)
## 相关教程
[
GTK+ 教程
](
/gui/gtk2/
)
以其母语介绍了 GTK。 在 ZetCode 上有其他绑定的教程。
[
Ruby GTK 教程
](
/gui/rubygtk/
)
,
[
C#GTK#教程
](
/gui/gtksharp/
)
,
[
Java Gnome 教程
](
/gui/javagnome/
)
,
[
PyGTK 教程
](
/gui/pygtk/
)
或
[
Visual Basic GTK#教程
](
/gui/vbgtk/
)
。
\ No newline at end of file
[
GTK+ 教程
](
/gui/gtk2/
)
以其母语介绍了 GTK。 在 ZetCode 上有其他绑定的教程。
[
Ruby GTK 教程
](
/gui/rubygtk/
)
,
[
C# GTK# 教程
](
/gui/gtksharp/
)
,
[
Java Gnome 教程
](
/gui/javagnome/
)
,
[
PyGTK 教程
](
/gui/pygtk/
)
或
[
Visual Basic GTK# 教程
](
/gui/vbgtk/
)
。
\ No newline at end of file
docs/gui/46.md
浏览文件 @
bfa91fe8
...
...
@@ -8,7 +8,7 @@
Snake 是较旧的经典视频游戏。 它最初是在 70 年代后期创建的。 后来它被带到 PC 上。 在这个游戏中,玩家控制蛇。 目的是尽可能多地吃苹果。 蛇每次吃一个苹果,它的身体就会长大。 蛇必须避开墙壁和自己的身体。 该游戏有时称为 Nibbles。
##
发展历程
##
开发
蛇的每个关节的大小为 10 像素。 蛇由光标键控制。 最初,蛇具有三个关节。 如果游戏结束,则在面板中间显示“ Game Over”消息。
...
...
docs/gui/47.md
浏览文件 @
bfa91fe8
...
...
@@ -6,7 +6,7 @@
Breakout 是 Atari Inc.开发的一款街机游戏。该游戏创建于 1976 年。在该游戏中,玩家移动桨叶并弹跳球。 目的是销毁窗口顶部的砖块。
##
发展历程
##
开发
在我们的游戏中,我们只有一个桨,一个球和三十个砖头。 计时器用于创建游戏周期。 我们不使用角度,而是仅更改方向:顶部,底部,左侧和右侧。 该代码的灵感来自 Nathan Dawson 在 PyGame 库中开发的 PyBreakout 游戏。
...
...
docs/gui/49.md
浏览文件 @
bfa91fe8
...
...
@@ -16,7 +16,7 @@ Tkinter 是与 Tk GUI 工具包的 Python 绑定。 Tk 是 Tcl 语言的原始 G
对于那些想学习编程的人来说,Python 是一个理想的起点。
Python 编程语言支持多种编程样式。 它不会强迫程序员采用特定的
范
例。 Python 支持面向对象和过程编程。 对功能编程的支持也很有限。
Python 编程语言支持多种编程样式。 它不会强迫程序员采用特定的
示
例。 Python 支持面向对象和过程编程。 对功能编程的支持也很有限。
Python 编程语言的官方网站是
[
python.org
](
http://python.org
)
...
...
docs/gui/56.md
浏览文件 @
bfa91fe8
...
...
@@ -6,7 +6,7 @@
Snake 是较旧的经典视频游戏。 它最初是在 70 年代后期创建的。 后来它被带到 PC 上。 在这个游戏中,玩家控制蛇。 目的是尽可能多地吃苹果。 蛇每次吃一个苹果,它的身体就会长大。 蛇必须避开墙壁和自己的身体。
##
发展历程
##
开发
蛇的每个关节的大小为 10 像素。 蛇由光标键控制。 最初,蛇具有三个关节。 游戏立即开始。 游戏结束后,我们将在窗口中心显示分数上方的游戏结束消息。
...
...
docs/gui/73.md
浏览文件 @
bfa91fe8
...
...
@@ -14,7 +14,7 @@
Figure: Tetrominoes
##
发展历程
##
开发
我们的俄罗斯方块游戏没有图像,我们使用 Swing 绘图 API 绘制四面体。 每个计算机游戏的背后都有一个数学模型。 俄罗斯方块也是如此。
...
...
docs/gui/86.md
浏览文件 @
bfa91fe8
此差异已折叠。
点击以展开。
docs/gui/96.md
浏览文件 @
bfa91fe8
此差异已折叠。
点击以展开。
docs/gui/98.md
浏览文件 @
bfa91fe8
此差异已折叠。
点击以展开。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录