1. 程式人生 > >如何在每一個單詞上顯示QToolTip

如何在每一個單詞上顯示QToolTip

相信大家都用過詞典吧!因為英語不太好。。。呵呵,所以經常進行劃詞翻譯!如何實現的呢?
個人理解:滑鼠移動至某單詞之上,先進行取詞,然後進行翻譯!
好了,如何用Qt進行取詞呢,看效果!


思路:捕獲ToolTip事件,將滑鼠下的單詞取出,進行ToolTip顯示!

程式碼如下:

#include
#include
#include
 
class TextEdit : public QTextEdit
{
Q_OBJECT

public:

    TextEdit(QWidget *parent = 0) : QTextEdit(parent)
    {
        setFrameStyle(QFrame::NoFrame);
        setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
        setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
        setText("hello Qt!");
    }
 
    bool event(QEvent* event)
{
        if(event->type() == QEvent::ToolTip)
        {
            QHelpEvent *helpEvent = static_cast (event);
            QTextCursor cursor = cursorForPosition(helpEvent->pos());
            cursor.select(QTextCursor::WordUnderCursor);
            QToolTip::showText(helpEvent->globalPos(), cursor.selectedText());

            return true;
        }
 
        return QTextEdit::event(event);
    }
};


相關推薦

如何在一個單詞顯示QToolTip

相信大家都用過詞典吧!因為英語不太好。。。呵呵,所以經常進行劃詞翻譯!如何實現的呢? 個人理解:滑鼠移動至某單詞之上,先進行取詞,然後進行翻譯! 好了,如何用Qt進行取詞呢,看效果! 思路:捕獲ToolTip事件,將滑鼠下的單詞取出,進行ToolTip顯示! 程式碼如下

css3 實現鼠標放到一個div顯示出另一個隱藏的div

webkit body charset font ans round size posit test <!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="u

WPF中讓TextBlock一個字符顯示不同的顏色

red set ref 後臺 target wid ffffff 包含 訪問 原文:WPF中讓TextBlock每一個字符顯示不同的顏色XAML代碼: <TextBlock x:Name="tb"> <Run Foreg

百度地圖之九如何在一個地圖顯示多條導航路線

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

百度地圖之在一個地圖顯示多條導航路線

                package com.njupt.bmap_helloworld;import com.baidu.mapapi.BMapManager;import com.baidu.mapapi.GeoPoint;import com.baidu.mapapi.MKAddrInfo;i

iOS 在一個UILabel顯示不同顏色

self.addressLabel = [[UILabelalloc]initWithFrame:CGRectZero]; self.addressLabel.textColor = [UICol

修改UGUI RawImage形狀(在一個rawimage顯示N個顏色,兩兩顏色之間有過度)

效果圖: 將程式碼繼承Graphic,然後重寫OnPopulateMesh方法即可,具體程式碼如下: using System.Collections; using System.Collections.Generic; using UnityEngin

對語料庫的一個句子的一個單詞加權重

包括預處理,使用tfidf加權重 #!/usr/bin/env python # -*- coding: utf-8 -*- # created by fhqplzj on 2017/05/15 上午10:48 import itertools import re imp

android:根據使用者輸入的陽曆生日判斷所屬星座,並將判定結果在另一個介面顯示給使用者

1,主頁面程式碼: package com.example.siwux.myapplication; import android.content.Intent; import android.support.v7.app.AppCompatActivity; import

css中將滑鼠放到一個div顯示出另一個隱藏的div

<span style="font-size:18px;"><!DOCTYPE html> <html lang="zh-cn"> <head> <meta charset="utf-8"/> &l

opencv中在螢幕隔幾秒顯示一個點,並且儲存點的座標

<span style="font-size:18px;">#include<Windows.h> #include<opencv2/imgproc/imgproc.hpp> #include<opencv2/highgui/hig

opencv隔幾秒在圖片顯示一個點 (程式碼)

<span style="font-size:18px;">#include<Windows.h> #include<opencv2/imgproc/imgproc.hpp> #include<opencv2/highgui/hig

java在線聊天項目0.9版 實現把服務端接收到的信息返回給一個客戶端窗口中顯示功能之客戶端接收

nec 一個 out for tex ava 添加 implement com 客戶端要不斷接收服務端發來的信息 與服務端不斷接收客戶端發來信息相同,使用線程的方法,在線程中循環接收 客戶端修改後代碼如下: package com.swift; import java.

Java如何找到一個單詞一次匹配?

lang 查找 dex 索引 匹配 imp static 一個 too 在Java編程中,如何查找字符串中特定單詞的最後一個索引? 以下示例演示如何使用Matlass類的matchet.find()方法和Pattern類的Patter.compile()方法查找字符串中指定

【OpenGL】-007 在視窗顯示一個三角形

【OpenGL】-007 在視窗上顯示一個三角形 文章目錄 【OpenGL】-007 在視窗上顯示一個三角形 1. 在視窗上顯示一個三角形 2. 效果 3. 備註 1. 在視窗上顯示一個三角形 /* Fi

java--Fibonacc由數字1、1、2、3...組成的,從第三個數字起每一個數字為前兩個數字的和。建立一個方法,接受一個整數引數,顯示從第一個元素開始總共由該引數指定的個數所構成的所有斐波那契數

題目完整描述:一個斐波那契數列是由數字1、1、2、3、5、8、13、21、34等等組成的,其中每一個數字(從第三個數字起)都是前兩個數字的和。建立一個方法,接受一個整數引數,並顯示從第一個元素開始總共由該引數指定的個數所構成的所有斐波那契數字。例如,如果執行 java Fibonacci 5(Fib

freemarker 遍歷map 同一行顯示多列 即 一個tr 顯示指定數量td

<#if  pmap??>                          

//楊氏矩陣 有一個二維陣列. 陣列的行從左到右是遞增的,列從到下是遞增的. 在這樣的陣列中查詢一個數字是否存在。

//楊氏矩陣 有一個二維陣列. 陣列的每行從左到右是遞增的,每列從上到下是遞增的. 在這樣的陣列中查詢一個數字是否存在。 時間複雜度小於O(N); 我用一個while迴圈實現了該要求 #include <stdio.h> #include <windows.h>

數碼相框---在LCD顯示一個向量字型(5)

數碼相框---在LCD上顯示一個向量字型(5)   回顧freetye官方給出的示例example1: FT_Init_Freetype(&library):初始化Freetype FT_New_Face(library, argv[1], 0, &face

//楊氏矩陣 有一個二維陣列. 陣列的行從左到右是遞增的,列從到下是遞增的. 在這樣的陣列中查詢一個數字是否存在

題目: //楊氏矩陣  有一個二維陣列.  陣列的每行從左到右是遞增的,每列從上到下是遞增的.  在這樣的陣列中查詢一個數字是否存在。  時間複雜度小於O(N);  陣列:  1 2 3  2 3 4