我正在创建一个网络动画师(类似于nam,如果你之前使用过它).
基本上,我在GTK + DrawingArea上有节点表示为小点,我更新这些节点的位置并在循环中重绘DrawingArea.
生成的动画很快,但不流畅(有很多闪烁).这可能是因为我在每帧之前用一个纯色填充DrawingArea.
你觉得我怎么能最好地解决这个问题?我应该预先渲染帧到Pixbufs吗?有更好的解决方案吗?
这是我当前的绘图代码(使用PyGTK):
rect = self.drawing_area.get_allocation()
style = self.drawing_area.get_style()
pos = [n.position_at(self.t) for n in self.nodes]
self.drawing_area.window.draw_rectangle(style.bg_gc[gtk.STATE_NORMAL], True,
0, 0, rect.width, rect.height)
for p in pos:
self.drawing_area.window.draw_arc(style.fg_gc[gtk.STATE_NORMAL], True,
rect.width * (p.x / 2400.0) - NODE_SIZE/2,
rect.height * (p.y / 2400.0) - NODE_SIZE/2,
NODE_SIZE, NODE_SIZE,
0, 64 * 360)
Run Code Online (Sandbox Code Playgroud)
其中self.t
是当前时间,它在循环中递增.
我想在页面上使用标准按钮的外观,但我希望网络抓取工具跟随它们,就好像它们是链接一样.
Google和其他网络抓取工具会将具有此类链接的网页编入索引吗?
<form method="get" action="/mylink.html"><input style="font-size:10pt" id="my-link" type="submit" value="Learn More..." /></form>
Run Code Online (Sandbox Code Playgroud)
如果没有,是否有其他方式使用标准按钮?
如何删除FileA以外的其他所有内容,甚至是隐藏文件?我用的是Ubuntu.
我尝试了下面的失败
rm [^fileA]
Run Code Online (Sandbox Code Playgroud) 我创建了一个while循环,其中创建了临时字符串(每次循环执行时字符串都会更新).如何从这些临时字符串中创建数组?
我想bcp
在Linux中使用该命令,如下所示:
bcp "EasyCash.dbo.user" out "[EasyCash].[dbo].[user].dat" -q -c -t "<EOFD>"
-r "<EORD>" -Usa -P123456 -S192.168.1.5
Run Code Online (Sandbox Code Playgroud)
Linux中的消息显示如下:
-base bcp: command not found
Run Code Online (Sandbox Code Playgroud)
谁能解决我的问题?
我想知道是否有人知道一个特定的原因(除了纯粹的风格)为什么以下语言这些语法启动一个类?
蟒蛇:
class MyClass:
def __init__(self):
x = MyClass()
Run Code Online (Sandbox Code Playgroud)
红宝石:
class AnotherClass
def initialize()
end
end
x = AnotherClass.new()
Run Code Online (Sandbox Code Playgroud)
我无法理解为什么用于构造函数的语法和用于实际获取类的实例的语法是如此不同.当然,我知道它并没有真正有所作为,但是,例如,在ruby中,使构造函数"new()"有什么问题?
我在视图上有一个按钮.当我点击它时,它应该加载另一个视图,一个带有novigation控制器.到目前为止,我已经有了这个,按钮调用这个方法:
-(IBAction)loadOptionsView:(id)sender {
if (self.optionsRootController == nil) {
//optionsRootController is declared as: UINavigationController *optionsRootController;
optionsRootController = [[UINavigationController alloc] init];
//Options is a UIViewController
Options *myOptions = [[Options alloc] initWithNibName:@"OptionsMenu" bundle:nil];
[optionsRootController pushViewController:myOptions animated:NO];
[myOptions release];
}
[self.view addSubview:optionsRootController.view];
}
Run Code Online (Sandbox Code Playgroud)
单击按钮时会发生什么,它会在当前屏幕顶部加载xib文件OptionsMenu,但状态栏大小顶部有一个间隙,所以我可以看到下面的视图.有帮助吗?加载包含导航控制器的新视图的正确方法是什么?
谢谢你们!