- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在为学校的家庭作业项目制作一个简单的应用程序,并且我正在尝试添加一个图像,但是每次我做 IDE 时都会崩溃,如果我设法编译它,当我进入那个窗口时,整个程序就会崩溃。它不会给我一个错误,当我在终端中打开它时没有任何输出。
我尝试使用包含的图标,尝试将其导入项目目录,并尝试将其作为文件链接访问,但均无济于事。
这是处理图像文件的构建部分,但我真的不知道我在做什么,因为这是我制作的第一个 gtk 应用程序。我可以根据需要提供更多的代码片段。当图像加载到程序中时,我无法提供任何代码示例,因为它会立即崩溃。
// Container child hbox6.Gtk.Box+BoxChild
this.image1 = new global::Gtk.Image();
this.image1.Name = "image1";
this.hbox6.Add(this.image1);
global::Gtk.Box.BoxChild w6 = ((global::Gtk.Box.BoxChild)(this.hbox6[this.image1]));
w6.Position = 0;
w6.Expand = false;
w6.Fill = false;
// Container child hbox6.Gtk.Box+BoxChild
this.image2 = new global::Gtk.Image();
this.image2.Name = "image2";
this.hbox6.Add(this.image2);
global::Gtk.Box.BoxChild w7 = ((global::Gtk.Box.BoxChild)(this.hbox6[this.image2]));
w7.Position = 1;
w7.Expand = false;
w7.Fill = false;
this.hbox3.Add(this.hbox6);
global::Gtk.Box.BoxChild w8 = ((global::Gtk.Box.BoxChild)(this.hbox3[this.hbox6]));
w8.Position = 0;
w8.Expand = false;
w8.Fill = false;
// Container child hbox3.Gtk.Box+BoxChild
this.hbox4 = new global::Gtk.HBox();
this.hbox4.Name = "hbox4";
this.hbox4.Spacing = 6;
// Container child hbox4.Gtk.Box+BoxChild
this.image3 = new global::Gtk.Image();
this.image3.Name = "image3";
this.hbox4.Add(this.image3);
global::Gtk.Box.BoxChild w9 = ((global::Gtk.Box.BoxChild)(this.hbox4[this.image3]));
w9.Position = 0;
w9.Expand = false;
w9.Fill = false;
// Container child hbox4.Gtk.Box+BoxChild
this.image4 = new global::Gtk.Image();
this.image4.Name = "image4";
this.hbox4.Add(this.image4);
global::Gtk.Box.BoxChild w10 = ((global::Gtk.Box.BoxChild)(this.hbox4[this.image4]));
w10.Position = 1;
w10.Expand = false;
w10.Fill = false;
最佳答案
首先,您不需要使用设计器来完成如此简单的任务。此外,设计器总是将您与给定的 IDE(在本例中为 MonoDevelop)联系在一起。图形工具包比以前更直观,而且很多时候理解如何使用它们是微不足道的。
这是仅在窗口中显示图像的项目的全部代码。
class MainWindow: Gtk.Window {
public MainWindow()
:base(Gtk.WindowType.Toplevel)
{
this.Build();
this.DeleteEvent += (o, args) => Gtk.Application.Quit();
}
void Build()
{
var imgContainer = this.BuildEmbeddedImage();
this.Add( imgContainer );
}
Gtk.Image BuildExternalImage()
{
return new Gtk.Image( "res/prowl.jpg" );
}
Gtk.Image BuildEmbeddedImage()
{
var pixbufImage = new Gdk.Pixbuf(
System.Reflection.Assembly.GetEntryAssembly(),
"CSShowImage.res.prowl.jpg");
return new Gtk.Image( pixbufImage );
}
}
class Ppal
{
[System.STAThread]
static void Main()
{
Gtk.Application.Init();
new MainWindow().ShowAll();
Gtk.Application.Run();
}
}
BuildExternalImage()
方法工作。如果不打算使用外部图像,您可以跳过此步骤。考虑到,通过这种方式,您必须将图像(在名为“res”的目录中)与可执行文件一起分发。 BuildEmbeddedImage()
工作。该图像将在您的可执行文件中,无需担心其他任何事情。唯一需要注意的是,在 BuildEmbeddedImage
,而不是读取“CSShowImage.res.prowl.jpg”的行,您必须使用项目名称、包含图像的目录名称和图像名称创建自己的字符串。例如,如果您的项目名为“HomeWork”,您将文件夹创建为“res”,并且您的图像是“myfamily.jpg”,那么生成的字符串将是“HomeWork.res.myfamily.jpg”关于c# - 当我使用属性窗口中的 pixbuf 选项将图像添加到 gtk 窗口时,Monodevelop 不断崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56259760/
在我将 MonoDevelop IDE 更新到最新版本 3.0.1 后,不再检测到我的 Monobjc 项目。我尝试重新安装 Monobjc,但未安装加载项,因为它们仅支持 MonoDevelop 2
我不知道它是怎么发生的,但是当我启动 Monodevelop 时,菜单突然以英语以外的语言出现。我尝试重新安装应用程序以及手动删除库下其他目录中的工件。没运气。重新安装后,它仍然以另一种语言加载。 最
MonoDevelop 中是否有任何方法可以创建您自己的代码片段,即可重用的代码?我知道在工具箱中你可以得到其他人的,但我似乎无法找到一种方法来添加我自己的东西。当然,我对 Monodevelop 还
我在 Mac 上使用 MonoDevelop 编写 MonoTouch 应用程序。当我打字时,Automatica 代码缩进/格式化效果很好。 问题是,当我复制和粘贴代码片段时,在很多情况下我会丢失格
我的任务列表板充满了旧的//Todo 注释任务,这些任务已从代码中解析出来。不幸的是,他们引用的文件早已消失,任务像僵尸一样徘徊。删除每个任务只会引发文件丢失的错误。如何手动强制完全清除任务列表以便它
我在哪里可以看到 MonoDevelop 中的 System.Diagnostics.Debug 和 System.Diagnostics.Trace 输出?我认为它应该出现在 Application
MonoDevelop 为每个项目创建这些。我应该将它们包含在源代码管理中吗? 最佳答案 来自MonoDevelop blog post : There were several long time
有谁知道是否可以设置运行您在 monodevelop 中创建的应用程序的工作目录? 应用程序被写入 bin/Debug 目录,这似乎是您调试应用程序时的工作目录。对于我的应用程序(我正在从 Windo
我想在 MonoDevelop 2.0(在 Ubuntu 下)中创建一些自定义模板,但我发现这个过程并不像我想要的那样直观。有谁知道模板存储在哪里?采用什么格式? 善良, 丹 最佳答案 在 MD 2.
题目说明了一切。我在 monodevelop 网站或通过谷歌找不到任何信息。 偶加System.Diagnostics.Debugger.Break()并运行 mono --debug MonoDev
我有 Ubuntu 12.04、MonoDevelop 2.8 和一些 valac .我知道 MD 支持 Vala 语言,但实际上我没有看到对 Vala 的任何支持。如果从头开始制作 C 解决方案,则
我正在尝试在 linux 上进行单声道开发,但是尝试创建一个包,给我错误无法获得 C# 编译器。找不到用于 Mono/.NET 3.5 的 C# 编译器。 我假设编译器是用 monodevelop 安
您可以将 MSpec 与 MonoDevelop 测试运行器集成吗?它是 working in Sharp-Develop .谷歌说'nothing ' 所以我猜在当前版本(2.8.2)中这是不可能的
右键单击(或按住 Control 单击,因为我使用的是 Mac)不会显示解决方案或项目的上下文菜单。 例如,在 Visual Studio 中,我会右键单击解决方案以将新项目添加到解决方案中。我已经查
阅读Using NuGet without committing packages to source control我明白我应该添加 .nuget文件夹到我的项目以在构建期间启用包还原...并阅读
我尝试将 Visual Studio 2012 csproj 文件导入 Monodevelop。一切正常,直到我编译。当我编译项目时,它为第一个表单生成 1 *.resources 文件,但对于以下表
我正在尝试在 Monodevelop for Mac 上安装 Monocross Framework。步骤应该是:1. 启动MonoDevelop。2. 在 MonoDevelop 中,选择 Tool
我想使用一些 GUI 对象来输出一些表的信息(此信息是只读的)。 Windows 窗体中有 DataGrid 和 DataGridView,但我找不到相同的 GTK# 类似物。谁能告诉我可以使用什么
在 Windows 上,我安装了 MonoDevlop 并尝试编译需要 Mono.Data.SQLiteClient 引用的 SQLite 示例。我在 MonoDevelop 中打开了“编辑引用”,除
我从 GitHub 得到了一个大项目,我正在尝试编译,但这些错误让我抓狂: Error CS0219: Warning as Error: The variable `memberInfo' is a
我是一名优秀的程序员,十分优秀!