我在Graham Hutton的Haskell编程的第8章中,我正在复制代码并在GHC中对其进行测试.
请参阅此处的幻灯片:http://www.cis.syr.edu/~sueo/cis352/chapter8.pdf,特别是幻灯片15
到目前为止我复制的相关代码是:
type Parser a = String -> [(a, String)]
pih_return :: a -> Parser a
pih_return v = \inp -> [(v, inp)]
failure :: Parser a
failure = \inp -> []
item :: Parser Char
item = \inp -> case inp of
[] -> []
(x:xs) -> [(x,xs)]
parse :: Parser a -> String -> [(a, String)]
parse p inp = p inp
sat :: (Char -> Bool) -> Parser Char
sat p …Run Code Online (Sandbox Code Playgroud) 我有一个C#类看起来有点像:
public class MyClass
{
private Func<IDataCource, object> processMethod = (ds) =>
{
//default method for the class
}
public Func<IDataCource, object> ProcessMethod
{
get{ return processMethod; }
set{ processMethod = value; }
}
/* Other details elided */
}
Run Code Online (Sandbox Code Playgroud)
我有一个IronPython脚本,可以在应用程序中运行
from MyApp import myObj #instance of MyClass
def OtherMethod(ds):
if ds.Data.Length > 0 :
quot = sum(ds.Data.Real)/sum(ds.Data.Imag)
return quot
return 0.0
myObj.ProcessMethod = OtherMethod
Run Code Online (Sandbox Code Playgroud)
但是当ProcessMethod被调用(在IronPython之外)时,在这个赋值之后,运行默认方法.
我知道脚本是运行的,因为脚本的其他部分都有效.
我该怎么做?
我正在尝试将图像转换为图标。我的功能是:
private Icon GenerateIcon(int width, int height)
{
using (Bitmap icon = _backingImage.GetThumbnailImage(width, height, () => false, System.IntPtr.Zero) as Bitmap)
using(MemoryStream imgStream = new MemoryStream())
{
icon.Save(imgStream, System.Drawing.Imaging.ImageFormat.Icon);
return new Icon(imgStream);
}
}
Run Code Online (Sandbox Code Playgroud)
但是当程序调用该方法时,它会抛出一个ArgumentNullException("encoder")我正在调用的地方icon.Save。
我觉得这很奇怪,因为我没有传入编码器,我希望框架弄清楚编码器应该是什么,这就是我传入ImageFormat.
是没有任何编码器ImageFormat.Icon,还是我做错了什么?
有谁知道如何使用OO uno bridge api在Calc表中"全选"?
或者,找到最大使用的行和列号将起作用.
我想要做的是将格式应用于电子表格中的所有单元格.
(原因是我将工作表保存为csv,因此除非格式提供足够的小数位,否则数字不会准确保存.)
有一些问题解释了如何关闭表单字段的自动完成功能,但是我在这里有一个具体问题:
我已将 设为autocomplete="off"和<form>所有表单字段。当用户使用浏览器后退按钮从表单目标页面返回到原始页面(包含表单)时,我想防止浏览器预填充字段。表单字段使用一些不支持预填充值的 jQuery UI 小部件。用户在提交表单之前必须与表单进行交互。
这在 Firefox、Chrome、Safari 中按预期工作。但是它在 Internet Explorer 中不起作用(我测试了版本 8 和 9)。当通过浏览器的后退按钮返回页面时,IE 仍然会填写字段。
这是一个静态 HTML 页面,因此我无法执行一些后端操作,例如设置随机表单字段名称/ID。
我能做些什么?
我正在努力寻找一种可以在计划中练习编程技巧的资源.
我有一个专门使用方案的课程.虽然我已经用C++和Java完成了适量的编程,并且掌握了关于好/坏编程实践和不同编程范例的基本思想(就像一个二年级大学生可以预期的那样),Scheme对我来说看起来像是象形文字!
任何帮助,将不胜感激.
Flask-SQLAlchemy给出了如何创建多对多关系的示例.它在两个不同的表之间完成.
是否可以在同一个表上创建多对多的关系?例如,一个姐妹可以有很多姐妹,她们也会有很多姐妹.我试过了:
girl_sister_map = db.Table('girl_sister_map',
db.Column('girl_id',
db.Integer,
db.ForeignKey('girl.id')),
db.Column('sister_id',
db.Integer,
db.ForeignKey('girl.id')))
class Girl(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String)
sisters = db.relationship('Girl',
secondary=girl_sister_map,
backref=db.backref('othersisters', lazy='dynamic'))
Run Code Online (Sandbox Code Playgroud)
但当我试图给一个女孩添加一个妹妹时,我得到:
sqlalchemy.exc.AmbiguousForeignKeysError:无法确定关系Girl.sisters上的父/子表之间的连接条件 - 有多个外键路径通过辅助表'girl_sister_map'链接表.指定'foreign_keys'参数,提供这些列的列表,这些列应被计为包含从辅助表到每个父表和子表的外键引用.
这可能吗?我应该怎么做?
我已经连接到“按键事件”来浏览 Gtk.TreeView。我成功地让Tab向右导航(跨行)。我在使用Return向下导航时遇到问题。当一个单元格被选中时,我可以编辑它的内容,但我必须按一次Return来提交值,然后再次导航到下面的单元格。我希望行为像Tab 一样,我按一次Return并提交更改并且所选单元格向下移动一个。我正在寻找类似电子表格的行为。
我猜这里与键绑定存在冲突,即第一个Return press 事件提交更改,第二个Return press 事件向下导航。此外,我尝试连接Shift_L键(而不是Return)以向下导航,当它一键导航时,它也无法将更改提交到单元格。
如果需要,我会创建一个 MWE,但我认为那里的某个人可能知道这里的问题,并且可以为我指明正确的方向或教育我。
编辑:好的,我花时间将所有内容精简为一个 MWE,任何人都可以提供帮助。相关的代码部分是名为onTreeNavigateKeyPress的回调函数。其中,麻烦的条件是elif keyname == 'Return'。如果您在您的机器上运行它,您将看到您可以将单元格值和Tab更改为右侧,并且Tab都向右导航并将更改的值提交到单元格。使用Return键执行相同操作将提交更改,但您需要再次按Return以向下导航。叫我迂腐,但我讨厌那样。正如您从代码中看到的,我尝试调用Gtk.TreeView.set_cursor方法直接使用新位置以及使用Glib.timeout_add从新线程调用它。
#!/usr/bin/env python3`
from gi.repository import Gtk, Gdk, GLib
class linFitApp(Gtk.Window):
def __init__(self):
Gtk.Window.__init__(self, title='Testing Keypress Events on Treeview')
self.set_position(Gtk.WindowPosition.CENTER)
self.set_default_size(400, 300)
self.set_border_width(5)
self.mainBox = Gtk.Box()
self.scrollTableWindow = Gtk.ScrolledWindow()
self.scrollTableWindow.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.AUTOMATIC) …Run Code Online (Sandbox Code Playgroud) 我想拍摄一个在app中运行的数据库的快照www并将其放入app中staging。当我使用克隆或创建/导入进行操作时,没有可用的数据。
我打算怎么做?
matt@server:~$ dokku run www curl http://www:password@dokku-couchdb-www:5555/www
{"db_name":"www","doc_count":4966,"doc_del_count":232,"update_seq":46475,"purge_seq":0,"compact_running":false,"disk_size":3071180923,"data_size":334987077,"instance_start_time":"1500006610823893","disk_format_version":6,"committed_update_seq":46475}
Run Code Online (Sandbox Code Playgroud)
因此,您可以看到有4966个文档。
matt@server:~$ dokku couchdb:clone www staging_www
-----> Starting container
Waiting for container to be ready
=====> CouchDB container created: staging_www
DSN: http://staging_www:password@dokku-couchdb-staging-www:5555/staging_www
-----> Copying data from www to staging_www
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 1110M 0 1110M 0 0 30.4M 0 --:--:-- 0:00:36 --:--:-- 31.9M
-----> Done
Run Code Online (Sandbox Code Playgroud)
因此,克隆中没有错误。然后我跑
dokku couchdb:link staging_www staging
dokku …Run Code Online (Sandbox Code Playgroud) 我正在智能电视上测试 javascript,
我尝试将对象视频放到画布上。使用 html5 视频标签,它可以在我的浏览器中运行,但不能在我的智能电视中运行。
但是当我尝试使用对象播放器时,出现以下错误消息:
无法在“CanvasRenderingContext2D”上执行“drawImage”:提供的值不是“(HTMLImageElement或HTMLVideoElement或HTMLCanvasElement或ImageBitmap)”类型
经过多次测试(id,对象id,对象src..)结果是相同的,我不知道如何将对象视频获取到画布。
这是一个简单的 html 测试:
<canvas id="test" width="300" height="300"></canvas>
<div id="test" style="left: 0%; top: 0%; width: 25%; height: 25%; position: fixed;">
<object type="application/avplayer" style="width: 480px; height: 270px;"></object>
</div>
Run Code Online (Sandbox Code Playgroud)
和js:
const canvas = document.querySelector("canvas");
const ctx = canvas.getContext("2d");
const video = document.getElementsByTagName('object');
//const video = document.getElementsById('idVideo');
ctx.drawImage(video, 0, 0, canvas.width, canvas.height)
Run Code Online (Sandbox Code Playgroud)
这是我的目标的示例,但我无法使用视频标签: http: //jsfiddle.net/on1kh4o0/
有什么想法或技巧可以用对象获得相同的结果吗?