2014-11-07 5 views
12

कैसे कार्यान्वित कर सकता हूं मैं जेडीएटीपीकर के नवीनतम रिलीज 1.3.4 के साथ काम कर रहा हूं। इसे कैसे कार्यान्वित किया जाना चाहिए?मैं जेडीएटीपीकर

मुझे एक कंपाइलर त्रुटि मिलती है: निर्माता JDatePanelImpl (UtilDateModel) अपरिभाषित है। सुझाया गया फिक्स है: JDatePanelImpl (DateModel, Properties) से मेल खाने के लिए तर्क जोड़ें। संपत्ति तर्क के रूप में क्या पारित किया जाना चाहिए?

import javax.swing.*; 
import java.awt.*; 
import java.awt.event.*; 
import java.sql.*; 
import java.util.*; 
import java.util.Calendar; 
import java.util.Date; 
import org.jdatepicker.impl.*; 
import org.jdatepicker.util.*; 
import org.jdatepicker.*; 

    //import org.jdatepicker.graphics.*; 
class date2 { 

    void GUI() { 
     JFrame f1 = new JFrame(); 
     f1.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     f1.setSize(300, 300); 
     f1.setVisible(true); 

     Container conn = f1.getContentPane(); 
     conn.setLayout(null); 

     UtilDateModel model = new UtilDateModel(); 
     //model.setDate(20,04,2014); 
     JDatePanelImpl datePanel = new JDatePanelImpl(model); 
     JDatePickerImpl datePicker = new JDatePickerImpl(datePanel); 
     f1.add(datePicker); 

    } 

} 

... धावक ...

class testDate2 { 

    public void main(String[] args) { 

     date2 d1 = new date2(); 
     d1.GUI(); 

    } 

} 
+1

के निर्माता में गुणों का उपयोग इस देखें -> 'conn.setLayout (शून्य),' <- यह बुरा हो, ऐसा नहीं करते हैं। 'नल' लेआउट का उपयोग करने से बचें, पिक्सेल सही लेआउट आधुनिक यूई डिज़ाइन के भीतर एक भ्रम है। ऐसे कई कारक हैं जो घटकों के व्यक्तिगत आकार को प्रभावित करते हैं, जिनमें से कोई भी आप नियंत्रित नहीं कर सकते हैं। स्विंग को कोर पर लेआउट मैनेजर्स के साथ काम करने के लिए डिज़ाइन किया गया था, इन्हें छोड़कर मुद्दों और समस्याओं का कोई अंत नहीं होगा जिससे आप – MadProgrammer

+1

को सुधारने की कोशिश कर रहे अधिक से अधिक समय व्यतीत करेंगे और देखें [स्विंग में एक शून्य लेआउट का उपयोग करने के लिए यह क्यों फेंक दिया गया है ?] (http://stackoverflow.com/questions/6592468/why-is-it-frowned-upon-to-use-a-null-layout-in-swing) अधिक जानकारी के लिए – MadProgrammer

उत्तर

35

आप 1.3.4 का उपयोग कर रहे हैं, तो निर्माता की आवश्यकताओं को बदल दिया है मान लिया जाये कि ...

UtilDateModel model = new UtilDateModel(); 
//model.setDate(20,04,2014); 
// Need this... 
Properties p = new Properties(); 
p.put("text.today", "Today"); 
p.put("text.month", "Month"); 
p.put("text.year", "Year"); 
JDatePanelImpl datePanel = new JDatePanelImpl(model, p); 
// Don't know about the formatter, but there it is... 
JDatePickerImpl datePicker = new JDatePickerImpl(datePanel, new DateLabelFormatter()); 

enter image description here

इस AbstractFormatter का उपयोग ...

public class DateLabelFormatter extends AbstractFormatter { 

    private String datePattern = "yyyy-MM-dd"; 
    private SimpleDateFormat dateFormatter = new SimpleDateFormat(datePattern); 

    @Override 
    public Object stringToValue(String text) throws ParseException { 
     return dateFormatter.parseObject(text); 
    } 

    @Override 
    public String valueToString(Object value) throws ParseException { 
     if (value != null) { 
      Calendar cal = (Calendar) value; 
      return dateFormatter.format(cal.getTime()); 
     } 

     return ""; 
    } 

} 
+0

हाँ मैं jdatepicker 1.3 का उपयोग कर रहा हूँ .4, इस परीक्षण के लिए मैंने एक शून्य लेआउट का उपयोग किया है। यह डिप्लोमा स्तर के लिए हमारे अंतिम जावा परियोजना के लिए है। सहायता के लिए धनयवाद। क्या आप JFrame/JPanel के लिए पृष्ठभूमि छवि जोड़ने का एक तरीका सुझा सकते हैं? –

+1

जेपीनल से विस्तारित कस्टम घटक बनाने का सबसे अच्छा तरीका है, अपने पेंट कॉम्पोनेंट विधि को ओवरराइड करें और वहां छवि खींचें। एसओ खोजें, बहुत सारे उदाहरण हैं – MadProgrammer

+0

मुझे जेएलएबल या जेटेक्स्टफील्ड की तारीख कैसे मिल सकती है? –

5

बस

Properties p = new Properties(); 
p.put("text.today", "Today"); 
p.put("text.month", "Month"); 
p.put("text.year", "Year"); 
JDatePanelImpl datePanel = new JDatePanelImpl(model, p); 
+0

हाँ पहले से ही ऐसा किया है। यह वास्तव में रास्ते से बहुत अच्छा पैकेज है। मैंने इसे अपने कई अनुप्रयोगों के लिए इस्तेमाल किया। –

+0

क्या वे java.util से गुण हैं? – BRHSM