我想让自己编写一些基于GUI的严肃应用程序,但是当我从Java中查看Swing/SWT这样的东西时,我忍不住通过创建"widget"对象并填充它们并调用方法来编写GUI界面.他们.
我认为GUI设计应该在一个单独的基于文本的文件中以某种标记格式完成,这种格式是读取和呈现的(例如HTML),因此接口的设计与其余代码没有紧密耦合.
我见过HTMLayout并且我喜欢这个想法,但到目前为止它似乎只在C++中.
我正在寻找一个python库(甚至是一个WIP项目)来做基于标记的gui.
UPDATE
我不能接受QT的xml的原因与我讨厌编程方法的原因相同; 您将单独组装每个窗口小部件,并在单独的行上指定它的每个属性.与编程方式相比,它没有任何优势.
我注意到有时候用户错误输入他们的电子邮件地址(以联系我们的形式),例如,键入@ yahho.com,@ yhoo.com或@ yahoo.co而不是@ yahoo.com
我觉得这可以通过一些javascript在现场纠正.只需检查电子邮件地址是否存在可能的错误,例如上面列出的错误,这样如果用户键入his_email@yhoo.com,就会显示非突兀的消息,或类似的消息,表明他可能意味着@yahoo. com,并要求仔细检查他是否正确输入了他的电子邮件.
问题是:
如何检测-in java脚本 - 字符串与"yahoo"或"yahoo.com"非常相似?或者一般来说,我如何检测两个字符串之间的相似程度?
PS(这是旁注)在我的具体案例中,用户不是以英语为母语的人,而且大部分用户都不熟悉,网站本身不是英文.
我想调试一个python项目
问题是,我不知道在哪里设置一个断点,
我想做的是,能够调用一个方法
SomeClass( some_ctor_arguments ).some_method()`
Run Code Online (Sandbox Code Playgroud)
并立即调试调试器
我怎么做?
我试过pdb.run( string_command )但它似乎没有正常工作
>>> import pdb
>>> import <some-package>
>>> pdb.run( .... )
> <string>(1)<module>()
(Pdb) s
NameError: "name '<some-package>' is not defined"
Run Code Online (Sandbox Code Playgroud) 将D1与phobos一起使用
我有一个文本输入字段,实例gtk.Entry.Entry,
调用setText("")会引发运行时错误
Gtk-CRITICAL **: gtk_entry_set_text: assertion `text != NULL' failed
Run Code Online (Sandbox Code Playgroud)
为什么?这似乎是D的一个问题,我试过这个:
string empty = "";
assert (empty != null);
my_entry.setText(empty)
Run Code Online (Sandbox Code Playgroud)
程序在断言失败时终止.
我该如何解决这个问题?
我正在查看vim源代码,特别是文件normal.c,我看到这个函数nv_operator正在使用,但它没有在任何地方定义(我grepped整个src目录)
它只被声明为:
static void nv_operator __ARGS((cmdarg_T *cap));
Run Code Online (Sandbox Code Playgroud)
我查了__ARGS的定义,但它只是......
在vim.h中没有(几乎没有):
#define __ARGS(x) x
Run Code Online (Sandbox Code Playgroud)
那么可能会发生什么?这是某种C创建虚拟函数的技术吗?
如何检查数组中的字符串是否出现?我的意思是我可以循环,但是有标准功能吗?
起初我做了:
if(str in ["first", "second", "third"])
Run Code Online (Sandbox Code Playgroud)
但它抱怨in只适用于关联数组.
我试图快速查找phobos文档,但没有找到任何与数组相关的模块.
那么有什么,或者我只需要手动循环它?
我在D1,phobos.
假设我有一个400K文本文件,我想从javascript中读取.问题是,我的目标受众连接速度很慢,因此加载400k可能需要很长时间.
我想我需要压缩文件,但是,如何在客户端通过javascript解压缩?
是否值得,或者减压所需的时间是否会减少下载时间?
UPDATE
为了清楚起见,文件是文本(数据)而不是代码.
我想为开源项目选择许可证.
考虑过GPL与BSD/MIT之后,我更喜欢GPL,因为它保护了软件的开源性.但是,我更喜欢限制性较小的东西.
对于不同版本的GPL不兼容,我特别感到好笑!
我希望软件能够保留FOSS,但我不希望许可问题妨碍将源代码合并到其他FOSS项目中.
有这样的执照吗?
我知道#3和#2可能看似矛盾,但我认为有很多方法可以解决它,例如,说出许可证,以便:
gpl-like是任何需要整个项目都在同一许可下的FOSS许可证.
这个问题是关于是否有这样的许可证.这不是创造一个的尝试.
什么系统git-config用于管理配置?它是作为独立库/工具公开提供的东西吗?还是它紧紧地缠绕成git?
我想为我的项目提供类似的东西.
我可以使用哪个库提供类似的功能吗?或者我应该编写自己的工具/库?
我并不擅长创建GUI,一般来说我的理念是:我不创建它们,或者我让它们尽可能简单(并说服自己,它更适合可用性:)
对于我目前的项目,我正在使用Python中的Qt(PyQt),我想开始添加一些GUI元素而不会使界面混乱.
我的想法是将这些元素创建为一种只在必要时出现的浮动形状的小部件; 非常像chrome中的状态栏(和查找栏).
是否有任何标准API可以创建这种接口?