为什么void QRect::moveCenter 这个函数没有把rect的中心移动到指定点?

superwavelet 2011-01-20 12:04:27
void QRect::moveCenter ( const QPoint & position )
Moves the rectangle, leaving the center point at the given position. The rectangle's size is unchanged.

See also center().

这个是官方解释,但是为什么我写:

pRect[i].moveCenter(QPoint(xx,yy));

然后是pRect[i]的左上角位于QPoint(xx,yy)的位置?


我就是想把绿色矩形的中心移动到蓝线的交点处
...全文
661 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
pRect[i].moveCenter(QPoint(xx,yy));
检查xx,yy的值和蓝线交汇点的x,y是否一致?
superwavelet 2011-01-20
  • 打赏
  • 举报
回复
谢谢,我知道哪里错了,是要先定义大小,然后才能添加到某个位置。
就想叫yoko 2011-01-20
  • 打赏
  • 举报
回复
你自己找找哪里写错了, 没有发现问题
void Widget::paintEvent(QPaintEvent *event)
{
QPainter painter(this);
QRect *rect = new QRect(0, 0, 40, 40);

painter.drawRect(*rect);

rect->moveCenter(QPoint(30, 30));
painter.drawRect(*rect);
}

16,816

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧