View Full Version : list box
  
meysamg_alone
جمعه 25 اردیبهشت 1388, 23:33 عصر
سلام به همه 
چه جوری میشه تویه یه لیست باکس نوشته ای رو add  کرد و پاک کرد و اون نوشته رو خوند .
Nima_NF
جمعه 25 اردیبهشت 1388, 23:46 عصر
AddString 
InsertString 
DeleteString 
FindString 
GetText
و ... از MSDN استفاده کنید.
در کلاسی که listbox هست یک متغیر از نوع CListBox باید بسازید (نوع آن control) و سپس توابع فوق را فراخوانی کنید:
CString str(_T("My string in the listbox"));
myListBox1->AddString( str );  // CListBox* myListBox1
meysamg_alone
شنبه 26 اردیبهشت 1388, 00:52 صبح
اقا نیما ببخشید منظور من win32 بود
Nima_NF
شنبه 26 اردیبهشت 1388, 02:15 صبح
لطفا همیشه در کنار همه سوال هایتان مشخص کنید که منظور win32 هست یا MFC.
ابتدا با استفاده از GetDlgItem در WM_INITDIALOG هندل listbox را دریافت کنید.
hwndList = GetDlgItem(hDlg, ID_MYLISTBOX); 
سپس هر جایی که خواستید از ارسال پیام مورد نظر استفاده کنید :
ItemNumber = SendMessage(hwndList, LB_GETCURSEL,                                 0, 0);  
SendMessage(hwndList, LB_DELETESTRING, ItemNumber, 0); 
LB_GETCURSEL برای گرفتن ایندکس آیتم کنونی انتخاب شده
LB_ADDSTRING برای اضافه کردن رشته به لیست باکس 
LB_FINDSTRING پیدا کردن رشته خاص
LB_GETTEXT دریافت رشته از آیتمی که شما اندکس آن را مشخص می کنید.(0 یعنی اولی)
LB_DELETESTRING حذف آیتم
و ...
TCHAR  str[20]= TEXT("hello");
SendMessage(hwndList, LB_ADDSTRING, 0,                      (LPARAM) str);
meysamg_alone
شنبه 26 اردیبهشت 1388, 14:32 عصر
فقط یه چیز دیگه می خواستم بدونم از کد های بالا میشه برایه COMBOBOX هم استفاده کرد یا نه
Nima_NF
شنبه 26 اردیبهشت 1388, 15:15 عصر
هر کنترل برای خودش پیام خاص خود را دارد، باید از MSDN استفاده کنید ولیست پیام ها را ببینید.
لینک کنترل ها در MSDN (http://msdn.microsoft.com/en-us/library/bb773173%28VS.85%29.aspx)
مثلا برای combobox پیام CB_ADDSTRING هست، با همان نام فقط پسوند CB دارد.
Changer
پنج شنبه 16 تیر 1390, 23:20 عصر
اقا اگه میشه توضیحی راجع به این ارور بدهید مربوط به LISTBOX هاست این هم کدش:
public
 partial class Form1 : Form
    {
        
string[] array = new string[4];
        
public Form1()
        {
            InitializeComponent();
        }
        
private void btnadd_Click(object sender, EventArgs e)
        {
            
string str;
           
            txtname.Focus();
            str = txtname.Text;
         
            lstname.Items.Add(str);
            txtname.Text = 
null;
        }
        
private void btnsort_Click(object sender, EventArgs e)
        {
            
for (int i = 0; i < lstname.Items.Count; i++)
            {
                array[i] = lstname.Items.ToString();
            }
            
int a = lstname.Items.Count;
            
Array.Sort(array);
            lstname.Items.Clear();
            
for (int j = 0; j < a; j++)
            {
                lstname.Items.Add(array[j]);
            }
        }
       
    }
72082
 
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.