2009-03-05 14 views
7

मैं पावर प्वाइंट में एक कस्टम रिबन के साथ काम कर रहा हूं, मुझे सभी टैबों के माध्यम से फिर से प्रयास करने और उनकी आईडी प्राप्त करने की आवश्यकता है।रिबन कस्टम टैब आईडी कैसे प्राप्त करें?

रिबन में विभिन्न परियोजनाओं (सी ++, सी #) से एडिन के रूप में जोड़े गए टैब शामिल हैं और मुझे उनकी आईडी नहीं पता है। मैं रिबन से निकाली गई घटनाओं को संभालने के लिए वीबीए का उपयोग कर रहा हूं।

वीबीए का उपयोग कर रिबन में सभी टैब से आईडी प्राप्त करने के लिए मैं कैसे कर सकता हूं?

अग्रिम धन्यवाद।

उत्तर

7

रिबन को कमांडबार ("रिबन") का उपयोग करके एक्सेस किया जाता है जो एक IAccessible ऑब्जेक्ट देता है। आप

AccessibleChildren _ 
      Lib "oleacc.dll" _ 
       (ByVal paccContainer As Object, _ 
       ByVal iChildStart As Long, _ 
       ByVal cChildren As Long, _ 
         rgvarChildren As Variant, _ 
         pcObtained As Long) _ 
      As Long 

इस का उपयोग करते हुए सभी चाइल्ड तत्वों (टैब) जो भी IAccessible वस्तुओं रहे हैं की सूची के साथ एक सरणी भर जाएगा द्वारा टैब तक पहुंच। आईडी आपको मिलती है, और आप प्रत्येक के बच्चों के माध्यम से सबमेनू आइटम प्राप्त करने के लिए पुन: प्रयास कर सकते हैं।

यह काफी जटिल है, इसलिए ऐसा करने का सबसे अच्छा तरीका उदाहरण से काम करना होगा। उस पर कोड के माध्यम से http://www.wordarticles.com/Shorts/RibbonVBA/RibbonVBADemo.htm

ribbon tabs

ध्यान में लीन होना: आप के लिए भाग्यशाली है कि यहां एक चमचमाती उदाहरण है।

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

  • कोई संबंधित समस्या नहीं^_^