Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Мультимедия, OpenGL/DirectX > просто вывести точку, но без окна


Автор: slav0nic 26.8.2006, 15:37
В опенгл не кодю, надо вывести на экран точку (или символ - неважно), но чтобы была просто точка на экране и всё, не было никакого окна, как это сделать? надо чтоб точка была всегда поверх окон
если на опенгл нельзя - то как сделать?

Автор: chozen 28.8.2006, 20:59
Недостаточно информации. 

Насколько понял... Огл для этого не нужен вообще. Можно юзать ф-ии
win gdi. Реализаций масса - от самых простых - для рисование точки ф-ей
Rectangle, для вывода текста - DrawText() - до самых извращенных (в пределах
данной реализации, конечно...) - вывод win gdi DIB с прозрачностью.


Чтоб вывести поверх всех окон - надо аллокэйтить нулевой DC - это
десткриптор десктопа. Хотя звучит это страшно, на самом деле просто до безобоазия:

Код

#include <WinGDI.h>   // по-моему так

// ...

HDC hDC = GetDC(NULL);  //allocate desktop DC

tagPAINTSTRUCT ps;
BeginPaint(NULL, &ps);

// ... здесь установки цветов, шрифтов и т.д.

// ... рисование

Rectangle(hDC, 10, 10, 11, 11);   // здесь, например, рисование точки...

EndPaint(NULL, &ps);

ReleaseDC(NULL, hDC);


Кста, на самом деле, разница между рисовать точку и рисовать текст - довольно большая...

Извини, если что не понял...

Автор: oleg1973 29.8.2006, 02:21
chozen, 
да ты не понял
ему надо так
1) имеем ехе1 который работает с opengl
2) имеем ехе2 который рисует точку в центре окна ехе1


slav0nic, 
маска а я тебя знаю )

Автор: chozen 29.8.2006, 22:26
Ну вы, блин, даете...

Цитата

chozen, 
да ты не понял
ему надо так
1) имеем ехе1 который работает с opengl
2) имеем ехе2 который рисует точку в центре окна ехе1


Я что - телепат по вашему??? smile  smile  smile 

А если таким макаром, то, если "exe1" (если, конечно, учесть, что "exe1" и "exe2" - однооконные приложения) полностью рисует все пространство окна, то ни хрена, извините конечно, "exe2" на нем нарисовать не сможет.
Ну если, конечно, точка, появляющаяся на какую-то малейшую долю секунды, тебя устроит...

А так... ищешь хендл окна "exe1", а дальше по пунктам как я писал...



Автор: slav0nic 2.9.2006, 15:04
пасиб, попробую=)

Автор: fantast 10.4.2007, 22:28
А как можно вывести чтонить на экран в директе без окна?
например, bmp какойнить, но чтоб именно через directx, тоесть есть чистый рабочий стол (или + окна какиенить) кликаешь exe, поверх всего появляется изображение (не на весь экран, а лишь на часть). 

Автор: Rickert 11.4.2007, 04:26
Такое предложение: сделать окно размером с точку и рисовтаь в нём точку. Как сделать самое простое окно, любых размеров, смотри уроки NeHe

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)