问题列表 - 第28534页

如何知道QLineEdit是否得到了关注?

我希望能够知道QLineEdit它是否是一次点击.所以我想我应该重新实现以下功能(??):

void QLineEdit::focusInEvent ( QFocusEvent * e )   [virtual protected]
Run Code Online (Sandbox Code Playgroud)

我该怎么办?

另外,请告诉我如何使用focusInEvent()函数以了解QLineEdit myEdit;对象是否有焦点.

编辑:我写了以下功能:

bool LoginDialog::eventFilter(QObject *target, QEvent *event)
{
    if (target == m_passwordLineEdit)
    {
        if (event->type() == QEvent::FocusIn)
        {
            if(checkCapsLock())
            {
                QMessageBox::about(this,"Caps Lock", "Your caps lock is ON!");

            }
            return true;

        }
    }
    return QDialog::eventFilter(target, event);
}
Run Code Online (Sandbox Code Playgroud)

m_passwordLineEditLoginDialog类构造函数中注册如下:

m_passwordLineEdit->installEventFilter(this);
Run Code Online (Sandbox Code Playgroud)

它落入了MessageBox-es的无限循环中.请帮我解决这个问题.实际上我想用弹出窗口(不带a QMessageBox)来实现这个功能.是否可以满足QLabel这种需求?

c++ qt qlineedit

4
推荐指数
1
解决办法
2万
查看次数

如何通过程序更改iPhone的DNS地址

我喜欢通过我的应用程序更改iPhone的DNS地址.可能吗 ?任何人让我知道我怎么做,这将是非常有帮助的.提前致谢.

iphone

5
推荐指数
1
解决办法
1927
查看次数

为UIAlertView编写函数?

我厌倦了编写基本的UIAlertView,即:

UIAlertView *alert = [[UIAlertView alloc] initWith...]] //etc
Run Code Online (Sandbox Code Playgroud)

是不是可以将所有这些放在一个"帮助器"函数中,我可以返回buttonIndex,或者通常返回什么警报?

对于一个简单的辅助函数,我猜你可以为标题,消息提供参数,我不确定你是否可以在参数中传递委托,或者捆绑信息.

在伪代码中,它可能是这样的:

someValueOrObject = Print_Alert(Title="", Message="", Delegate="", Bundle="") // etc
Run Code Online (Sandbox Code Playgroud)

对此的任何帮助都会很棒.

谢谢

iphone objective-c uialertview

6
推荐指数
2
解决办法
2689
查看次数

涉及类指针的C++面试问题

假设有一个基类指针指向一个基类对象:

baseclass *bptr;
bptr= new baseclass;
Run Code Online (Sandbox Code Playgroud)

现在,如果我这样做

bptr= new derived;
Run Code Online (Sandbox Code Playgroud)

这里有什么问题?

c++

13
推荐指数
3
解决办法
2148
查看次数

Python memoising/deferred lookup属性装饰器

最近,我浏览了一个包含许多类的现有代码库,其中实例属性反映了存储在数据库中的值.我重构了很多这些属性,以便延迟数据库查找,即.不是在构造函数中初始化,而是仅在第一次读取时初始化.这些属性在实例的生命周期内不会发生变化,但它们是第一次计算的真正瓶颈,并且只在特殊情况下才真正访问过.因此,它们也可以在从数据库中检索后进行缓存(这因此符合记忆的定义,其中输入只是"无输入").

我发现自己一遍又一遍地为各种类的各种属性输入以下代码片段:

class testA(object):

  def __init__(self):
    self._a = None
    self._b = None

  @property
  def a(self):
    if self._a is None:
      # Calculate the attribute now
      self._a = 7
    return self._a

  @property
  def b(self):
    #etc
Run Code Online (Sandbox Code Playgroud)

是否有现成的装饰器已经在Python中执行此操作,我根本不知道?或者,是否有一种相当简单的方法来定义装饰器来执行此操作?

我在Python 2.5下工作,但如果它们有显着差异,2.6答案可能仍然很有趣.

注意

在Python包含了大量现成的装饰器之前,人们已经提出了这个问题.我更新了它只是为了更正术语.

python decorator

106
推荐指数
4
解决办法
3万
查看次数

如何在文档中间通过PHP设置cookie?

如何在文档中间设置cookie,而不会产生"已发送标题"错误?我要做的是制作一个注销脚本(登录cookie设置工作......很奇怪.是因为它包含在if语句中吗?)但是我已经回应了页面标题和其他一些东西在我进行此注销之前,在页面顶部.

谢谢!

php cookies header setcookie

2
推荐指数
2
解决办法
1087
查看次数

到目前为止的字符串(格式无效)

我正在使用Joda-Time库将我的String日期转换为实际日期,因为这似乎是最简单的解决方案.我正在使用该DateTime对象来做到这一点;

 new DateTime(strValue);
Run Code Online (Sandbox Code Playgroud)

但是当插入一些格式时,它会抛出异常;

java.lang.IllegalArgumentException: Invalid format: "Mon, 30 Sep 2002 01:56:02 GMT"
java.lang.IllegalArgumentException: Invalid format: "Sun, 29 Sep 2002 19:59:01 GMT"
java.lang.IllegalArgumentException: Invalid format: "Mon, 30 Sep 2002 01:52:02 GMT"
java.lang.IllegalArgumentException: Invalid format: "Sun, 29 Sep 2002 17:05:20 GMT"
java.lang.IllegalArgumentException: Invalid format: "Sun, 29 Sep 2002 19:09:28 GMT"
java.lang.IllegalArgumentException: Invalid format: "Sun, 29 Sep 2002 15:01:02 GMT"
java.lang.IllegalArgumentException: Invalid format: "Sun, 29 Sep 2002 23:48:33 GMT"
java.lang.IllegalArgumentException: Invalid format: "Sun, 29 Sep 2002 17:24:20 GMT" …
Run Code Online (Sandbox Code Playgroud)

java calendar date jodatime

2
推荐指数
1
解决办法
7478
查看次数

如何在mutli-project解决方案中使用Unity进行解析

在一个新的WPF项目(VS2010)中,我第一次使用Unity 2.在这个项目中,我使用以下结构:

WPF项目

类库1

班级图书馆2

班级图书馆3 ....

使用Unity注册不同类型是在WPF Project中使用以下代码段完成的:

IUnityContainer container = new UnityContainer()
                            .RegisterType<IObjectContext, ObjectContextAdapter>()
                            .RegisterType<IConnectionStringProvider, ConnectionStringProvider>()
                            .RegisterType(typeof(IRepository<>), typeof(Repository<>));
Run Code Online (Sandbox Code Playgroud)

现在让我说我想<Orders在类库1中解析Repository > constructor-inject.显然,容器在其他项目中并不为人所知!

我该怎么做?

inversion-of-control unity-container

7
推荐指数
1
解决办法
5686
查看次数

如何覆盖Python导入?

我正在研究pypreprocessor,这是一个采用c风格指令的预处理器,我已经能够使它像传统的预处理器一样工作(它是自耗的,并且即时执行后处理代码),除了它打破了库进口.

问题是:预处理器运行文件,处理它,输出到临时文件,exec()临时文件.导入的库需要处理稍有不同,因为它们不会被执行,而是被加载并且可以被调用者模块访问.

我需要做的是:中断导入(因为预处理器在导入过程中运行),将后处理代码作为tempModule加载,并用tempModule替换原始导入以欺骗调用脚本认为tempModule是原始模块的导入.

到目前为止,我到处搜索,没有解决方案.

这个Stack Overflow问题是我到目前为止提供答案的最接近的问题: 在Python中覆盖名称空间

这就是我所拥有的.

# Remove the bytecode file created by the first import
os.remove(moduleName + '.pyc')

# Remove the first import
del sys.modules[moduleName]

# Import the postprocessed module
tmpModule = __import__(tmpModuleName)

# Set first module's reference to point to the preprocessed module
sys.modules[moduleName] = tmpModule
Run Code Online (Sandbox Code Playgroud)

moduleName是原始模块的名称,tmpModuleName是后处理代码文件的名称.

奇怪的是这个解决方案仍然完全正常运行,好像第一个模块完成正常加载一样; 除非你删除最后一行,否则你会得到一个模块未找到错误.

希望Stack Overflow上有人比我更了解进口,因为这个让我难过.

注意:我只会授予一个解决方案,或者,如果在Python中无法做到这一点; 最好,最详细的解释为什么这不是不可能的.

更新:对于任何感兴趣的人,这是工作代码.

if imp.lock_held() is True:
    del sys.modules[moduleName]
    sys.modules[tmpModuleName] = __import__(tmpModuleName)
    sys.modules[moduleName] = __import__(tmpModuleName)
Run Code Online (Sandbox Code Playgroud)

'imp.lock_held'部分检测模块是否作为库加载.以下几行完成其余的工作.

python import preprocessor overriding

32
推荐指数
2
解决办法
3万
查看次数

3
推荐指数
1
解决办法
450
查看次数