Viemu for 2008 如何高亮选中的单词?

Viemu for 2008
如何高亮选中的单词?
答:vim内置的命令gd,*,#, 但是会引起光标移动,怎么才能高亮选中的单词,
但又不移动光标呢。
步骤1:在windows下,建立C:/User/Adminstrator/_viemurc
步骤2:在_viemurc写入 map g/ *N
步骤3::重启VS2008吧,然后光标选中单词,执行g/就可以高亮了!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要实现图形元素选中高亮,并且在选中其他地方时恢复,可以通过以下步骤实现: 1. 在绘制图形元素时,维护一个变量来表示该元素是否被选中,如果被选中,则在绘制时使用高亮颜色绘制。 2. 在鼠标按下事件中,判断鼠标是否在图形元素所在区域内,如果在,则将该元素标记为选中状态,并更新界面。 3. 在鼠标移动事件中,判断鼠标是否在其他图形元素所在区域内,如果在,则将当前选中元素恢复为未选中状态,并将新选中的元素标记为选中状态,并更新界面。 4. 在鼠标释放事件中,将选中元素标记为未选中状态,并更新界面。 以下是示例代码: ```cpp class GraphicsItem : public QGraphicsItem { public: GraphicsItem() : m_selected(false) { } void setSelected(bool selected) { if (m_selected != selected) { m_selected = selected; update(); } } bool isSelected() const { return m_selected; } protected: void paint(QPainter* painter, const QStyleOptionGraphicsItem* option, QWidget* widget) override { if (m_selected) { painter->setBrush(Qt::red); } else { painter->setBrush(Qt::blue); } painter->drawRect(boundingRect()); } void mousePressEvent(QGraphicsSceneMouseEvent* event) override { if (event->button() == Qt::LeftButton) { setSelected(true); } else { QGraphicsItem::mousePressEvent(event); } } void mouseMoveEvent(QGraphicsSceneMouseEvent* event) override { if (isSelected()) { QGraphicsScene* scene = this->scene(); QList<QGraphicsItem*> items = scene->items(event->scenePos()); foreach(QGraphicsItem* item, items) { if (item != this) { GraphicsItem* graphicsItem = dynamic_cast<GraphicsItem*>(item); if (graphicsItem) { graphicsItem->setSelected(true); setSelected(false); break; } } } } else { QGraphicsItem::mouseMoveEvent(event); } } void mouseReleaseEvent(QGraphicsSceneMouseEvent* event) override { if (event->button() == Qt::LeftButton) { setSelected(false); } else { QGraphicsItem::mouseReleaseEvent(event); } } private: bool m_selected; }; ``` 在此示例中,我们继承了 QGraphicsItem 类,实现了鼠标事件的处理,以及绘制函数,通过 setSelected() 函数设置选中状态,并在 paint() 函数中根据选中状态绘制不同的颜色。在鼠标事件中,我们判断鼠标是否在当前图形元素内,如果在,则将其标记为选中状态,并在 mouseMoveEvent() 函数中判断鼠标是否在其他图形元素内,并将当前选中元素恢复为未选中状态。在 mouseReleaseEvent() 函数中,将当前选中元素标记为未选中状态。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值