我有一个现有的tkinter gui,我想向其中添加一个openGL小部件。但是,似乎OpenGL窗口小部件仅在顶级时才起作用。
这有效:
from OpenGL.Tk import *
from Tkinter import *
herp=Opengl(height=100,width=100)
herp.pack()
herp.mainloop()
Run Code Online (Sandbox Code Playgroud)
但这不是:
from OpenGL.Tk import *
root=Tk()
b=Opengl(root,height=100,width=100)
b.pack()
root.mainloop()
Run Code Online (Sandbox Code Playgroud)
给我以下错误:
Traceback (most recent call last):
File "\\sith\user_files\2013-Softerns\new_gui_planning\LearningOpenGL\integration_3.py", line 4, in <module>
b=Opengl(root,height=100,width=100)
File "C:\Python27_32bit\lib\site-packages\OpenGL\Tk\__init__.py", line 267, in __init__
apply(RawOpengl.__init__, (self, master, cnf), kw)
File "C:\Python27_32bit\lib\site-packages\OpenGL\Tk\__init__.py", line 216, in __init__
Widget.__init__(self, master, 'togl', cnf, kw)
File "C:\Python27_32bit\lib\lib-tk\Tkinter.py", line 2036, in __init__
(widgetName, self._w) + extra + self._options(cnf))
TclError: invalid command name "togl"
Run Code Online (Sandbox Code Playgroud)
我需要导入togl吗?
我唯一可以找到的其他东西是:
http://computer-programming-forum.com/56-python/ece79da9298c54de.htm
但是他们的解决方案对我不起作用。
我有一个数字列表,例如:{1,2,3,4,5,6}.
我想随机生成这些数字,我这样做:
void Update(){
float ran = Random.Range(1,6);
print(ran);
}
Run Code Online (Sandbox Code Playgroud)
如何比其他数字生成或打印3个?
我有以下代码在图顶点列表上运行广度优先搜索(bfs)。
当前,我有在列表中的每个项目上运行bfs的代码,但是我想这样做,以便如果for循环中的下一个项目已经在发现的节点集中,那么for循环应该跳过它,因此不必在每个顶点上都执行bfs。
我这样做的主要原因是因为我必须读一个非常大的文件,所以当我在每个顶点上执行bfs时,这会导致内存崩溃。我的代码适用于小型测试用例,但不适用于大型文件。
我知道continue语句允许您跳过当前迭代,但是我不知道如何跳过下一个迭代。
任何帮助表示赞赏;谢谢。
def count_components(g):
dictionary = {}
dict_list = {}
for i in g.vertices():
dictionary = breadth_first_search(g,i)
dictionary_keys = list(dictionary.keys())
dict_list[i] = dictionary_keys
for value in dict_list.values():
for i in range(len(value)):
value[i] = str(value[i])
result = {}
for key, value in dict_list.items():
dict_list[key].sort(key=str.lower)
if value not in result.values():
result[key] = value
count = len(result)
return count
Run Code Online (Sandbox Code Playgroud) 我有两节课
public class Singleton<T> : MonoBehaviour where T : Component
{
protected static T _instance;
public static T Instance
{
get
{
return _instance;
}
}
}
Run Code Online (Sandbox Code Playgroud)
和
public class GameManager : Singleton<GameManager>
{
// Lots of Methods and Properties...
}
Run Code Online (Sandbox Code Playgroud)
我想创建3.从GameManager派生的类,例如ShooterGameManager.我可以创建ShooterGameManager
public class ShooterGameManager : GameManager
{}
Run Code Online (Sandbox Code Playgroud)
但是实例仍然是GameManager !!!,我尝试过用类通用类添加额外的类定义.
public class GameManager<T> : Singleton<T> where T : Component
{}
Run Code Online (Sandbox Code Playgroud)
但是这次有两个完全不同的类可用,没有从GameManager继承.我该怎么办 ???