2010-02-12 8 views
5

कोई भी सॉफ्टवेयर उत्पाद है जिसे AnyChart कहा जाता है जो वेब पृष्ठों में फ़्लैश किए गए चार्ट को एम्बेड करने के लिए बहुत अच्छा है। AnyCharts भी पीएनजी फ़ाइल प्रारूप में निर्यात कर सकते हैं। यहाँ एक उदाहरण है:क्या इंडी जावास्क्रिप्ट चला सकता है?

<script type="text/javascript" language="javascript"> 
    //<![CDATA[ 
    var chart = new AnyChart('http://www.mysite.com/swf/AnyChart.swf'); 
    chart.width = 600; 
    chart.height = 300; 
    chart.setXMLFile('http://www.mysite.com/anychart.xml'); 
    chart.addEventListener("draw", function() { saveChartAsImage(chart); }); 
    chart.write("content-box"); 
    //]]> 
</script> 

मेरे अंतिम लक्ष्य PNG प्रारूप में AnyChart चार्ट निर्यात करने के लिए एक स्वचालित सेवा करना है। इसलिए मैंने इंडी के साथ एक सेवा की जो पेज को किसी भी चार्ट जावास्क्रिप्ट से कॉल करता है। लेकिन समस्या यह प्रतीत होती है कि इंडी जावास्क्रिप्ट निष्पादित नहीं कर सकता है।

क्या इंडी को जावास्क्रिप्ट निष्पादित करने में सक्षम करने का कोई तरीका है?

उत्तर

7

नहीं, इंडी जावास्क्रिप्ट निष्पादित नहीं करता है। आपने यह भी देखा होगा कि यह HTML को पार्स या प्रदर्शित नहीं करता है, और यह फ्लैश नहीं चलाता है, या तो। इंडी नेटवर्क प्रोटोकॉल करता है।

आप माइक्रोसॉफ्ट स्क्रिप्ट नियंत्रण ActiveX ऑब्जेक्ट आयात कर सकते हैं और है कि अपना जावास्क्रिप्ट चलाएं। यदि आपको उस पर ब्योरा चाहिए, तो एक नया प्रश्न पोस्ट करें।

3

आपको इसके लिए इंडी का उपयोग करने की आवश्यकता नहीं है। यदि आप चाहते हैं कि आप TWebBrowser का उपयोग कर सकते हैं। IHTMLWindow2 इंटरफ़ेस में execScript फ़ंक्शन है। तो हो सकता है कि आप यह कर सकें:

var 
    Doc : IHTMLDocument2; 
    Win : IHTMLWindow2; 
    aBrowser : TWebBrowser; 
//... 
begin 
    //... 
    Doc := aBrowser.Document as IHTMLDocument2; 
    Win := Doc.parentWindow; 
    Win.execScript('alert(SomeMessage);', 'JavaScript'); 
end; 
+0

धन्यवाद। मुझे IHTMLWindow2 इंटरफ़ेस का शिकार करना होगा। –

1

क्या आपने वेब के लिए vcl (उर्फ इंट्रावेब एटोज़ेड) का प्रयास किया था? एक teechart संस्करण है जो काफी उपयोगी है, आप अपने वेब ऐप के किसी भी TiwForms के भीतर "बाहरी" जावास्क्रिप्ट कोड भी निष्पादित कर सकते हैं (ठीक उसी कोड जो आप अब उपयोग कर रहे हैं)।

यदि आपको आवश्यकता है तो मुझे एक नया प्रश्न पोस्ट करें और मुझे सहायता करने में खुशी होगी।

संबंधित मुद्दे