Там не совсем то. Наколько я понял они создают новое окно и в нем рисуют. Проблема в том чтобы заставить QPainter рисовать на экране, полученным с помощью QApplication::desktop()->screen(-1). Правда не знаю можно ли это.
Все примеры на эту тему создают QWidget сами, и переопределяют для него paintEvent. Если предложить QPainter рисовать не в paintEvent, то он только ругается.
Ради интереса много всего можно придумать, что никогда в практике не пригодится. А рисование одним приложением поверх всех окон на мой взгляд даже вредно.
>Мб пояснишь? А то я аж заинтересовался.
Ну по-моему это не так важно. Если интересно, то есть флэш игра цель в которой удалять цепочки шариков одинакового цвета.
Цель: выделять на экране эти цепочки.
>Игра не моя и в ней не предусмотрено такое выделение.
Ну как вариант найти исходники и подправить. Ну или да, рисовать поверх...
Так тогда надо сначала делать как бы скрин, с которого снимать рисунок цепочки и перерисовывать ее поверх нее же, но как бы поверх всех окон?
Так а чем не подходит создать прозрачное окно размерами с флешку, поместить туда рисунок этой флешки, но с переделанными цепочками, которые можно будет выделять? Ну и обновлять это дело при изменении флешки...
Так если убрать его окантовку, и поместить строго над флешкой - заметно, что поверх нее что-то еще болтается будет сложно.
возникает проблема как передать щелчок мыши флешке.
Приходит в голову только запомнить координаты курсора и, убрав окно, съэмулировать щелчок в этих координатах. Правда если флешка, как ты говоришь, не поддерживает таких выделений, как нужны, то создание псевдовыделения в окне не поможет, даже если ты «передашь» щелчок флешке.