2013-10-01 5 views
6

मैं एक जावाएफएक्स एप्लीकेशन विकसित कर रहा हूं जहां एक वर्ग जिसे मैंने विकसित किया है (javafx.scene.Parent से बढ़ाया गया है) इस पर आधारित है कि उपयोगकर्ता ने सूची दृश्य नियंत्रण में किस प्रविष्टि पर क्लिक किया है।जावाएफएक्स नोड्स - अंतिम उपयोगकर्ता द्वारा उन्हें आकार बदलने योग्य कैसे बनाएं?

बस इस नोड के बारे में स्पष्ट होने के लिए, यह एक लेआउट टूल जैसे स्केनेबिल्डर का उपयोग करके नहीं बनाया गया है, यह उपयोगकर्ता के कार्यों के आधार पर रनटाइम पर बनाया गया है।

मेरे कस्टम नोड क्लास के लिए निर्माता एक वीबीओक्स और एक लेबल बनाता है और अपने स्वयं के लेआउट कॉर्ड सेट करने के लिए कन्स्ट्रक्टर विधि में पास निर्देशांक (एक्स, वाई) का उपयोग करता है। मैं नोड ड्रैग करने योग्य बनाने के लिए एक कस्टम उपयोगिता वर्ग का उपयोग करता हूं। यह नया नोड तब मुख्य अनुप्रयोग फलक में जोड़ा जाता है।

हालांकि, मैं यह पता लगाने में असफल रहा हूं कि मैं उपयोगकर्ता द्वारा इन नोड्स को आकार देने योग्य कैसे बना सकता हूं। यही है, उपयोगकर्ता को नोड के कोने पर माउस को रखने की अनुमति दें, आकार बदलें और आकार बदलने के लिए खींचें। एक ऑपरेशन जो सभी उपयोगकर्ताओं का उपयोग किया जाता है, इससे कोई फर्क नहीं पड़ता कि ओएस क्या है।

क्या किसी ने JavaFX में ऐसा कुछ किया है? (इस विषय पर मेरी खोज केवल स्वत: आकार बदलने कि एक माता पिता नोड अपने बच्चे नोड्स के साथ करता है पर विषयों ऊपर खींचने के लिए लग रहे हैं।)

बहुत धन्यवाद,

इयान।

उत्तर

0

आप पर देख सकते हैं documentation of VBox आप केवल न्यूनतम, पसंदीदा और अधिकतम सीमा परिभाषित कर सकते हैं, वहाँ वास्तव में मैन्युअल रूप से पुनः आकार देने योग्य यह बनाने के लिए एक तरीका नहीं है।

आपकी समस्या का समाधान करने का एकमात्र उचित समाधान यह है कि आप अपनी खुद की कक्षा को विकसित कर सकें, क्योंकि आप जो चाहते हैं वह बहुत विशिष्ट लगता है, आपकी समस्या का विवरण के साथ, मुझे नहीं लगता कि कुछ लेआउट या पैनल का उपयोग आप ठीक से करेंगे चाहते हैं।

मैं कुछ है कि आप उपयोग कर सकते हैं पाया:, Dragging to resize a JavaFX Region

यह आपको एक क्षेत्र का आकार बदलने देता इस लेख में आप सभी इस क्षेत्र में आप VBox डाल करने के लिए है के बाद क्या करना है, लेकिन सूचना है कि:

केवल ऊंचाई का आकार बदलना वर्तमान में लागू किया गया है।

इस कोड JavaFX8 में काम नहीं करेगा, तो आप टिप्पणी की जांच करने के लिए कि यह कैसे JavaFX8

में

आशा इस मदद करता है Worls होगा।

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