के बिना सी # में ग्राफिक्स कैसे आकर्षित करूं, मेरे पास वर्तमान में एक कंसोल एप्लिकेशन है। मैं फॉर्म के बिना स्क्रीन पर ग्राफिक्स कैसे आकर्षित करूं।मैं बिना किसी फॉर्म
उत्तर
EDIT - CuddleBunny की टिप्पणी के आधार पर, मैंने एक कक्षा बनाई है जो मूल रूप से "स्क्रीन पर ग्राफिक्स खींचेंगी।"
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing;
using System.Windows.Forms;
namespace WindowsFormsApplication4
{
class test : Form
{
public test() : base()
{
this.TopMost = true;
this.DoubleBuffered = true;
this.ShowInTaskbar = false;
this.FormBorderStyle = FormBorderStyle.None;
this.WindowState = FormWindowState.Maximized;
this.BackColor = Color.Purple;
this.TransparencyKey = Color.Purple;
}
protected override void OnPaint(PaintEventArgs e)
{
e.Graphics.DrawRectangle(Pens.Black, 0, 0, 200, 200);
this.Invalidate(); //cause repaint
}
public static void Main(String[] args)
{
Application.Run(new test());
}
}
}
उम्मीद है कि यह मदद करता है।
वर्ष दोषपूर्ण जवाब
आप किसी अन्य विंडो के hwnd हो और उस पर आकर्षित कर सकते हैं। मुझे यकीन नहीं है कि पूरी स्क्रीन पर कैसे आकर्षित किया जाए, हालांकि, मैंने हमेशा खुद को आश्चर्यचकित कर दिया है।
एक साधारण उदाहरण:
Process p = Process.GetProcessById(0); //id of the process or some other method that can get the desired process
using (Graphics g = Graphics.FromHwnd(p.MainWindowHandle))
{
g.DrawRectangle(Pens.Black, 0, 0, 100, 100);
}
आप ग्राफिक्स के लिए आकर्षित करने के लिए किसी तरह के एक खिड़की बनाना होगा। आप सीधे स्क्रीन पर नहीं आ सकते हैं।
मुझे पूरी तरह से यकीन नहीं है, लेकिन इस एप्लिकेशन को पुश कहा जाता है (जो आपको स्क्रीनशॉट अपलोड करने देता है) http://puush.me/ आपको कैप्चर करने के लिए स्क्रीन के क्षेत्र का चयन करने के लिए एक आयत स्क्रीन पर खींचता है, और ऐसा प्रतीत होता है किसी भी खिड़की की जरूरत नहीं है। विज्ञापन नहीं, लेकिन मैंने हमेशा सोचा है कि यह कैसे करता है। – Zhanger
मुझे यकीन है कि यह एक "विंडो" का उपयोग करता है लेकिन जिस विंडो में यह चित्रित हो रहा है उसके पास कोई क्रोम नहीं है। आप फॉर्म प्रपत्र बनाकर, विंडो की शैली को "none" और पारदर्शी पृष्ठभूमि में सेट करके इस प्रभाव को फिर से बना सकते हैं। इसके बाद उपयोगकर्ता केवल उन्हीं चीज़ों को देखेगा जो आप फ़ॉर्म में जोड़ते हैं। puush.me के मामले में, मुझे यकीन है कि यह एक पारदर्शी पृष्ठभूमि के साथ एक पूर्णस्क्रीन विंडो बनाता है। – CuddleBunny
CuddleBunny, जो एक स्टैंडअलोन उत्तर के योग्य है (विशेष रूप से यदि आप इसे कुछ नंगे हड्डियों के कोड के साथ रस देते हैं)। –
यदि आप एक पूर्ण स्क्रीन directdrawsurface बनाते हैं तो आप डायरेक्टएक्स का उपयोग कर खिड़की के बिना पूरी स्क्रीन पर खींच सकते हैं। स्क्रीन सब तुम्हारा है (बिल्कुल विंडोज़ डेस्कटॉप नहीं)।
- 1. FileSystemWatcher.SynchronizingObject बिना किसी फॉर्म के
- 2. मैं बिना किसी सिंकएडाप्टर
- 3. जब मैं बिना किसी रनटाइम
- 4. एंटीफॉर्गेरी फॉर्म फॉर्म प्रमाणीकरण के बिना टोकन
- 5. ड्रूपल - किसी फॉर्म
- 6. link_to अपडेट (फॉर्म के बिना)
- 7. एचटीएमएल फॉर्म टैग बिना किसी विशेषताओं के - किसी भी कारण से नहीं?
- 8. सिद्धांत इकाई के बिना फॉर्म मान्य करना
- 9. फॉर्म के बिना INPUT रीसेट करें
- 10. बिना किसी dlsym
- 11. बिना किसी HttpServletRequest
- 12. बिना किसी डेटाबेस
- 13. बिना किसी "ब्रेकडाउन
- 14. बिना किसी xrandr
- 15. बिना किसी hrefs
- 16. बिना किसी ज्योथन
- 17. बिना किसी सुडो
- 18. इसे दिखाए बिना एक फॉर्म लोड करें
- 19. बिना किसी असेंबली
- 20. बिना किसी मेनमेनू.एक्सिब
- 21. मैं फॉर्म 2
- 22. डीजेगो सीएसआरएफ फॉर्म के बिना टोकन
- 23. मैं अपने फॉर्म
- 24. हास्केल: बिना किसी स्टैक ओवरफ्लो
- 25. एचटीएमएल को बिना किसी शेल
- 26. मैं शुद्ध जावास्क्रिप्ट (जेएस ढांचे के बिना) का उपयोग कर किसी फॉर्म से सभी चेकबॉक्स कैसे चुन सकता हूं?
- 27. बिना किसी प्रकार के अपवाद
- 28. बिना किसी दावा के संकलन
- 29. किसी भी त्रुटि या अपवाद के बिना WinApp फॉर्म क्रैश .नेट
- 30. बिना किसी फॉर्म के रेडियो बटन समूह के माध्यम से लूप कैसे करें?
क्यों आप एक फॉर्म नहीं बनाते हैं और इसे द्वितीयक धागे में चलाते हैं? –
क्योंकि जो कुछ मैं कर रहा हूं उसके लिए कोई रूप नहीं है। –
एक फॉर्म एक खिड़की के लिए सिर्फ एक अमूर्त है। आप इस तथ्य को छोड़ सकते हैं कि यह एक रूप है और इसे एक सामान्य विंडो के रूप में उपयोग करें। आप Windows api CreateWindowEx का उपयोग भी कर सकते हैं Windows.Form dll के उपयोग को छोड़कर, लेकिन आपको बहुत सारे काम करने की आवश्यकता होगी क्योंकि आपके पास उस मामले में कोई भी जीडीआई फ़ंक्शन नहीं है। –