我正在尝试用QT 4.5做一个绘画程序,所以我使用QGraphicsView作为画布,而QGraphicsScene则用于存储绘制的项目.由于某些原因,我无法在我自己的派生QGraphicsView中获得QPainter上下文
class DrawingCanvas : public QGraphicsView
{
DrawingCanvas::DrawingCanvas(QWidget * parent);
...
};
DrawingCanvas::DrawingCanvas(QWidget * parent = 0) : QGraphicsView(parent)
{
....
}
void DrawingCanvas::paintEvent(QPaintEvent& paintEventInfo)
{
// Result in painter not active
QPainter(this);
...
}
Run Code Online (Sandbox Code Playgroud)
但是,如果我将DrawingCanvas更改为QWidget的子项,则可以正常工作.看到QGraphicsView派生自QAbstractScrollArea,然后是QFrame,然后是QWidget,我希望代码能够正常工作.
所以我猜问题是:
1)为什么我不能在QGraphicsView中使用paintEvent来获得活跃的QPainter?2)我有可能得到一个吗?
提前致谢!
我有一个函数,它接受两个参数,并返回一个或另外50%的时间.
对此进行单元测试应确定可以返回两个参数.幸运的是,我不需要证明每个的概率是50%,但我需要证明两个参数都可以返回.
如何为此功能编写测试用例?
我正在为我的应用程序使用DevArt的dotConnect和Entity Developer.我使用Entity-First功能创建了表格.
我注意到许多列类型都设置为CLOB.我只有MySQL和Microsoft SQL服务器的经验,所以我不确定是否将CLOB用于该应用程序.我做了一些阅读,发现CLOB用于大量数据.
问题是:
在大多数字段中使用CLOB,例如用户的性别(应该是varchar(1))还是全名,可行吗?将CLOB字段转换为VARCHAR2的步骤需要删除列然后重新创建它,并且在DevArt的实体资源管理器中有问题,所以我想尽可能避免使用它.编辑:我刚刚发现,如果为字符串字段设置最大长度,它将自动为VARCHAR2.
Oracle中的TINYTEXT是否有任何等价物?
我正在为WordPress编写一些插件和主题,我觉得很难调试,因为在页面加载时,$ _GET,$ _POST和$ _REQUEST都是空的.即使设置了错误报告,每当出现致命错误时,我都不会收到空白页以外的错误消息.反正为WordPress启用'调试模式'吗?
谢谢!
我有一个数据库表,将位置链接在一起; 位置可以位于其他位置内的位置.
location (<id>, ....)
location_parent (<location_id>, <parent_id>)
Run Code Online (Sandbox Code Playgroud)
这是MySQL/PHP的深度:
$sql = "SELECT id FROM se_locations_services WHERE parent_locationid IN
( SELECT location_id FROM se_locations_parent WHERE parent_id = '$locationid' )";
Run Code Online (Sandbox Code Playgroud)
在给定父位置的情况下,如果使用MySQL,无论多深,都能获得所有后代位置?
PHP和.Net有闭包; 我一直想知道在OOP和设计模式中使用闭包的一些例子,以及它们相对于纯OOP编程有什么优势.
作为澄清,这不是OOP与函数编程,而是如何在OOP设计中最好地使用闭包.闭包如何适用于工厂或观察者模式?例如,您可以采用哪些技巧来澄清设计并导致更松散的耦合.
是的,所以MS引入了C#3.0的扩展方法.基本上,它允许您向现有类添加新方法,而无需从中继承或更改其实现.我的脑海里立刻响起了警钟.
1)您开始为库或标准库类实现自己的扩展方法.现在它不再标准化了.
2)在OOP中,您可以通过继承或组合定义新类型.实际上扩展方法是什么呢?同样,在使用扩展方法时,没有定义明确的关系.
3)扩展方法是否可以在项目之间移植?如果存在两种方法的扩展方法怎么办?
扩展方法也是一大堆蠕虫值得避免的吗?我可以看到它有优点,因为你输入较少,但不知何故它看起来会导致不好的练习.
意见?
QList :: QList(const QList&other)构造其他的副本.
此操作需要恒定时间,因为隐式共享QList.这使得从函数返回QList的速度非常快.如果修改了共享实例,它将被复制(写时复制),并且需要线性时间.
然后在关于被隐式共享的链接上,它讨论了引用计数和写时复制.这是一个深层拷贝还是只是浅拷贝?
我有一个表模式,它本质上是一堆带有日期时间字段的事务信息
TRANSACTION (< transactionid >, amount, when)
Run Code Online (Sandbox Code Playgroud)
我需要生成每月总交易数,即SUM(金额),但我对我的分组感到难过.SQL中的每一行应包含月总数(因此,对于2009年1月9日,2009年1月9日等等,一行).我想我可能必须按代码生成表,但是想知道是否有办法使用SQL解决这个问题.
任何帮助,将不胜感激!(使用MySQL 5.3,PHP5)
在PHP中,可以通过使用正确的标头回显文件来将文件返回到浏览器.您不需要先在服务器上保存它的副本.
因此,假设我有一堆数据,我希望作为excel文件返回 - 在使用OpenXML创建数据结构后,如何将文件提供给用户而不先将其保存在服务器上?