我想以类似的形式创建一个选项
[] I would like to order a [selectbox with pizza] pizza
Run Code Online (Sandbox Code Playgroud)
其中selectbox仅在选中复选框时启用,未选中时禁用.
我想出了这段代码:
<form>
<input type="checkbox" id="pizza" name="pizza" value="yes"> <label for="pizza">
I would like to order a</label>
<select name="pizza_kind">
<option>(choose one)</option>
<option value="margaritha">Margaritha</option>
<option value="hawai">Hawai</option>
</select>
pizza.
</form>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js">
</script>
<script>
var update_pizza = function () {
if ($("#pizza").is(":checked")) {
$("#pizza_kind").removeAttr("disabled");
}
else {
$("#pizza_kind").prop('disabled', 'disabled');
}
};
$(update_pizza);
$("#pizza").change(update_pizza);
</script>
Run Code Online (Sandbox Code Playgroud)
我尝试了各种方法如何使用设置禁用属性.prop(),.attr()和.disabled=.然而,没有任何反应.当应用于<input type="checkbox">代替时<select>,代码完美地运行.
如何<select>使用jQuery 禁用/启用?
我正在尝试为我的类存储数据创建更有用的调试消息.我的代码看起来像这样
#include <QAbstractTableModel>
#include <QDebug>
/**
* Model for storing data.
*/
class DataModel : public QAbstractTableModel {
// for debugging purposes
friend QDebug operator<< (QDebug d, const DataModel &model);
//other stuff
};
/**
* Overloading operator for debugging purposes
*/
QDebug operator<< (QDebug d, const DataModel &model) {
d << "Hello world!";
return d;
}
Run Code Online (Sandbox Code Playgroud)
我希望qDebug() << model打印出"Hello world!".但是,输出总是有"QAbstractTableModel(0x1c7e520)"之类的东西.
你知道什么是错的吗?
我正在移植liblarch,一个处理有向无环图的库,从PyGTK(GTK2)到PyGObject内省(GTK3).我遇到了GtkTreeView的问题.
使用liblarch的应用程序需要按列对GtkTreeView进行排序,但同时,用户可以拖放行,在另一行下移动一行.为此我必须手动处理dnd_data_get(),dnd_data_receive()这是完全可以的.
GtkTreeView的最小设置在PyGTK下运行.行已排序,用户可以移动行.
#!/usr/bin/python
# -*- coding: utf-8 -*-
import gtk
window = gtk.Window()
window.set_size_request(300, 200)
window.connect('delete_event', lambda w,e: gtk.main_quit())
# Define Liblarch Tree
store = gtk.TreeStore(str, str)
store.insert(None, -1, ["A", "Task A"])
store.insert(None, -1, ["B", "Task B"])
store.insert(None, -1, ["C", "Task C"])
d_parent = store.insert(None, -1, ["D", "Task D"])
store.insert(d_parent, -1, ["E", "Task E"])
# Define TreeView in similar way as it happens in GTG/Liblarch_gtk
tv = gtk.TreeView()
col = gtk.TreeViewColumn()
col.set_title("Title")
render_text …Run Code Online (Sandbox Code Playgroud) 我想玩PyGTK的线程错误.到目前为止我有这个代码:
#!/usr/bin/python
import pygtk
pygtk.require('2.0')
import gtk
import threading
from time import sleep
class SomeNonGUIThread(threading.Thread):
def __init__(self, tid):
super(SomeNonGUIThread, self).__init__()
self.tid = tid
def run(self):
while True:
print "Client #%d" % self.tid
sleep(0.5)
class App(threading.Thread):
def __init__(self):
super(App, self).__init__()
self.window = gtk.Window()
self.window.set_size_request(300, 300)
self.window.set_position(gtk.WIN_POS_CENTER)
self.window.connect('destroy', gtk.main_quit)
self.window.show_all()
def run(self):
print "Main start"
gtk.main()
print "Main end"
if __name__ == "__main__":
app = App()
threads = []
for i in range(5):
t = SomeNonGUIThread(i)
threads.append(t)
# Ready, set, go!
for …Run Code Online (Sandbox Code Playgroud) 我有一个非常简单的窗口,我有2个按钮 - 一个用于取消,一个用于应用.如何设置应用默认按钮?(当我按下回车键时,按下"应用"按钮)
但是,我想将焦点设置为第一个输入小部件(我不能在按钮上使用grab_focus())
有什么建议?
编辑: 在wuub的回答之后,它在视觉上很好用.但是,当我按下不同小部件中的按钮时,它不会运行默认按钮的回调.
示例代码:
import os, sys, pygtk, gtk
def run(button, window):
dialog = gtk.MessageDialog(window, gtk.DIALOG_MODAL, gtk.MESSAGE_INFO, gtk.BUTTONS_OK, "OK")
dialog.run()
dialog.destroy()
window = gtk.Window()
window.connect("destroy", gtk.main_quit)
vbox = gtk.VBox(spacing = 10)
entry = gtk.Entry()
vbox.pack_start(entry)
button = gtk.Button(stock = gtk.STOCK_SAVE)
button.connect("clicked", run, window)
button.set_flags(gtk.CAN_DEFAULT)
window.set_default(button)
vbox.pack_start(button)
window.add(vbox)
window.show_all()
gtk.main()
Run Code Online (Sandbox Code Playgroud)
EDIT2:必须运行每个可以激活默认小部件的输入
widget.set_activates_default(True)
Run Code Online (Sandbox Code Playgroud) 我正在实现QAbstractTableModel,我想QPushButton在每行的最后一列插入一个.当用户单击此按钮时,将显示一个新窗口,其中包含有关此行的更多信息.
你知道如何插入按钮吗?我知道委派系统,但所有的例子都只是关于"如何使用组合框编辑颜色"......
我有一个代码,它获取所有函数的列表以及函数在FooBar其参数消息上支持的正则表达式:
functionList = []
def notify(RegExpression):
def _notify(function):
functionList.append((RegExpression, function))
return function
return _notify
class FooBar:
@notify(".*")
def everything(self, message):
pass
@notify("(\w+):.*")
def reply(self, message):
pass
for foo in functionList:
print("%s => %s" % foo)
Run Code Online (Sandbox Code Playgroud)
我想做类似的事情,但将函数列表及其参数作为类变量放入类中。当FooBar存在更多类似的类时,它会防止出现问题。每个类都应该有自己的列表。
def notify(RegExpression):
# ???
class FooBar:
functionList = []
@notify(".*")
def everything(self, message):
pass
@notify("(\w+):.*")
def reply(self, message):
pass
for foo in FooBar.functionList:
print("%s => %s" % foo)
Run Code Online (Sandbox Code Playgroud)
投入什么notify()?
我正在尝试Tkinter并使用网格编写一个小窗口.
代码如下:
from Tkinter import *
from modules.logic import game
import options
class StartWindow:
def __init__(self):
data = open("myData", "w")
data.close()
self.master = Tk()
self.l0 =Label (self.master, text = "W=jump", bg = "magenta", font = ("comic sans ms", 20, "bold")).grid(row=0, sticky = W)
self.l1=Label (self.master, text = "A=left",bg = "magenta",font = ("comic sans ms", 20, "bold")).grid(row = 1, sticky = W)
self.l2=Label(self.master, text = "D=Duck", bg = "magenta",font = ("comic sans ms", 20, "bold")).grid(row=2, sticky = W )
self.l3=Label(self.master, text …Run Code Online (Sandbox Code Playgroud)