我正在开发一个可在Linux,Mac和Windows上运行的Mono应用程序,并且需要应用程序(在单个操作系统上)才能相互发送简单的字符串消息.
具体来说,我想要一个单实例应用程序.如果尝试启动第二个实例,它将向已经运行的单个实例发送消息.
DBus已经出局了,因为我不希望这是一个额外的要求.套接字通信似乎很难,因为Windows似乎不允许连接权限.Mono似乎不支持内存映射文件.Mono似乎不支持命名管道.似乎在Mono上不支持IPC.
那么,是否有一种简单的方法可以将单个计算机上的字符串消息发送到适用于每个操作系统的服务器应用程序,而无需权限或其他依赖项?
我试图想出最简单的在Windows上使用Gtk使用Mono.WebBrowser的例子.Windows.Forms版本工作正常(默认情况下,如果您不指定Platform.Gtk),但我需要集成到现有的Gtk跨平台应用程序中.
这是一个简单的例子:
public static void Main (string[] args)
{
Gtk.Application.Init ();
Gtk.Window win = new Gtk.Window ("Title");
Mono.WebBrowser.IWebBrowser browser =
Mono.WebBrowser.Manager.GetNewInstance(Mono.WebBrowser.Platform.Gtk);
browser.Load(win.Handle, 500, 250);
win.ShowAll ();
GLib.Timeout.Add( 500, delegate {
browser.Navigation.Go ("http://google.com/");
return false;
});
Gtk.Application.Run ();
}
Run Code Online (Sandbox Code Playgroud)
编译,运行和浏览器.初始化是真的.但它没有呈现为Gtk.Window(或我尝试过的任何其他Gtk.widget).什么触发浏览器实际呈现自己?可能是我无法将其直接渲染到一个窗口中(我看过mono-docbrowser [1]源代码,并且有一个更复杂的例子,但它也没有呈现).
我已经看过webkit-sharp,但无法使用Gtk在Windows或Mac上运行.
[1] https://github.com/mono/mono-tools/tree/master/docbrowser
我正在努力解决如何在Django中最好地创建可以用于显示或编辑数据的HTML页面.也就是说,我希望字段的值在显示模式下显示为文本,但在编辑/添加模式时显示在它们的小部件中.似乎Django不是为此而设计的:字段总是出现在它们的小部件中(例如,文本输入,文本区域等).
是否有一种常用的技术来处理这种情况,而不是使用一种形式,而不是另一种?
我在想一个可以用于每个表单字段的自定义模板标签过滤器,例如:
{{form.field_name | render_field:mode}}
其中render_field将根据模式返回字段的HTML小部件,或仅返回值作为文本.
我错过了什么,或者这是一个可行的解决方案吗?
GNU通用公共许可证(GPL)用于软件,GNU自由文档许可证(FDL)用于文档 - 是否有类似GNU的数据许可证?具体来说,我希望许可证允许GPL软件具有相同类型的权限(例如,重新分发,访问),但是对于数据.
我想创建一个 Django 应用程序,其中每个用户都有自己的数据库。用户仍然会从主用户那里获得身份验证,但所有应用程序模型都来自他们自己的数据库副本。
例如,假设我们有这样的东西:
DATABASES = {
'default': {
'NAME': 'sqlite3',
'ENGINE': 'default.db',
},
'user1': {
'NAME': 'sqlite3',
'ENGINE': 'user1.db',
}
'user2': {
'NAME': 'sqlite3',
'ENGINE': 'user2.db',
}
Run Code Online (Sandbox Code Playgroud)
}
其中 default.db 具有用户(和任何其他非应用程序表),而 user1.db 和 user2.db 具有特定于应用程序的模型。
我怎样才能允许一些用户使用 user1 而其他用户使用 user2?
我可以动态地向 DATABASES 添加更多条目吗?(如果重要的话,我正在使用 wsgi)
我宁愿不更改代码(例如,通过插入 .using()),而是希望拥有一个全局数据库路由器,也许。
我已阅读https://docs.djangoproject.com/en/dev/topics/db/multi-db/但无法弄清楚执行上述操作所需的内容。
试图从 ImageSurface 创建 Pixbuf,但我得到的只是黑色像素。有任何想法吗?
Cairo.ImageSurface surface = mysurface;
int w = surface.Width;
int h = surface.Height;
Gdk.Pixmap pixmap = new Gdk.Pixmap(null, w, h, 24);
using (Cairo.Context cr = Gdk.CairoHelper.Create(pixmap)) {
cr.Operator = Cairo.Operator.Source;
cr.SetSource(surface);
cr.Paint();
}
_pixbuf = Gdk.Pixbuf.FromDrawable(pixmap, Gdk.Colormap.System, 0, 0, 0, 0, w, h);
Run Code Online (Sandbox Code Playgroud) 假设在IPython笔记本中创建了一个ipywidget,如下所示:
from ipywidgets import widgets
i = widgets.IntText()
Run Code Online (Sandbox Code Playgroud)
有没有办法从Javascript设置值?我怀疑我需要知道小部件的一些通讯ID。还是有更好的方法在Python中使用Javascript设置变量?
用例是我想将鼠标单击位置(通过Javascript获得)位置发送回Python。