السلام عليكم
كيف أبحث داخل الكومبوبوكس بحيث اكتب حرف الف يعرض لى كل الذى يبدأ بألف
ثم اكتب باء يعرض كل ما يبدأ بألف باء وهكذا
السلام عليكم
كيف أبحث داخل الكومبوبوكس بحيث اكتب حرف الف يعرض لى كل الذى يبدأ بألف
ثم اكتب باء يعرض كل ما يبدأ بألف باء وهكذا
سوالك غير واضح
لكن اذا كنت ترد عندما تضغط على حرف مثلا M
يظهر لك اول كلمه بحرف الـ m
فهذا ييكون طبيعى مع ان شاء الـ Combo box object
جرب الكود دا كدا
package Test;
/**
*
* @author Mahmoud Mahrous
*/
public class SearchInCombox extends javax.swing.JFrame {
/** Creates new form SearchInCombox */
public SearchInCombox() {
initComponents();
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
comboBox = new javax.swing.JComboBox();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
comboBox.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4", "Mahmoud", "mahrous", "kelany", "ali", "sa3id" }));
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(comboBox, javax.swing.GroupLayout.PREFERRED_SIZE, 206, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(22, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(comboBox, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
);
pack();
}// </editor-fold>
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new SearchInCombox().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JComboBox comboBox;
// End of variables declaration
}ودوس مثلا m او s او k
هتلاقى اللى بيتم اختياره هو اول كلمه تبدا بالحرف الذى تم كتاتبه
او انت عارف الكلمه الموجوده اكتبها صح حروفها ورا بعض بدون اخطاء وهتلاقى التى تم اختيارها هى الكلمه التى انت كتبتها
جرب ان كان كذلك ابلغنا او لم يكن ذلك قصدك وضح قصدك مره اخرى
سلام عليكم
جزاك الله خيرا على الرد
لكن ليس هذا قصدى أن يكون الJComboBox Editable استطيع الكتابة فيها واثناء الكتابة يظهر ما ابحث عنه
فمثلا كتبت m تظهر القائمة وفيها كل ما يبدأ بحرف m واذا أتبعت ال m بحرف مثلا a تظهر القائمة تحمل كل ما يبدأ بحرفى ma وهكذا
هل اتضح قصدى بارك الله فيك
elwaly كتب:جزاك الله خيرا على الرد
لكن ليس هذا قصدى أن يكون الJComboBox Editable استطيع الكتابة فيها واثناء الكتابة يظهر ما ابحث عنه
فمثلا كتبت m تظهر القائمة وفيها كل ما يبدأ بحرف m واذا أتبعت ال m بحرف مثلا a تظهر القائمة تحمل كل ما يبدأ بحرفى ma وهكذا
هل اتضح قصدى بارك الله فيك
هذا يشبه انك تريد ان تعمل مثل الـ auto complete
لكن اعتقد انها ليس ليها ارتباط بالـ combo box
ننتظر اهل الخبره فى هذا الموضووع ليردوا عليك ويفيدونا واستفيد من الردود ان شاء الله متابع معاك باذن الله
سلام عليكم
السلام عليكم
اخى انت تريد استخدام خاصية ال auto complete مثل الموجودة فى #C او VB
ولكنها ليست موجودة فى الجافا سواء ل Combobox او Textfield
يمكنك استبدالها بفكرة جميلة
وهى ان تقوم بانشاء JTable مكون من عمود واحد وفى اعلى الجدول انشئ حقل JTextField
وقم بربطه بفلتر على الجدول على عمود الاسم
وعند كتابة اى حرف فى الحقل سيتم حذف كل الاسماء من الجدول ماعدا الاسماء التى تحتوى على هذا الحرف
طبعا حذف مؤقت وسيظهر لك هذا بعد مسح الحرف من الحقل مرة اخرى
هذه مجرد فكرة ولك حرية الاختيار
وربما يأتى من يقترح علينا حل افضل
تقبل مرورى
تحياتى
﴿وَمَا كَانَ اللَّهُ لِيُعَذِّبَهُمْ وَأَنْتَ فِيهِمْ ۚ وَمَا كَانَ اللَّهُ مُعَذِّبَهُمْ وَهُمْ يَسْتَغْفِرُونَ﴾
الأنفال ۳۳
السلام عليكم وشهر كريم ايها الأخوة
انا مع الأخ Oracle_java في اقتراحة بإستخدام JTable مع Filter . فلقد واجهت نفس الحاجة تقريبا وافادتني حكاية الفلتر.
هناك شيء انا غير متأكد منة ولكن جربة اذا اردت على اي حال:
اعتقد ان المستخدم اذا نقر على JComboBox وكانت تحتوي على عدة عناصر ثم وبسرعة قام بالنقر على حرف او اكثر في الكيبورد فإن المؤشر يذهب مباشرة لأول كلمة تبدأ بالأحرف التي نقر عليها المستخدم.
لم اجربها بنفسي ولكن رأيت موظف في قسم التسجيل في كلية من الكليات يقوم بهذة الحركة ليصل الى اسم القسم بسرعة في برنامج رصد الدرجات ( لم اعرف انها ممكنة رغم اني انا الذي صممت البرنامج
) .
اعتقد ان هذة الميزة من خصائص الكائن JComboBox ولا دخل للمبرمج بها على ما اظن.
بحثت عن قلمي البارحة فلم أجدة!
...............
لم أجد سوى لوحة المفاتيح هذة
.............
تتطلع إلي بشفقة..
.............
أكاد أسمعها .. تقول (ألم يسمع بGoogle ؟!؟؟)