powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как при выборе записи в ComboBox, удалить ее с листа?
6 сообщений из 6, страница 1 из 1
Как при выборе записи в ComboBox, удалить ее с листа?
    #38992571
Kulakov Oleg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как при выборе записи в ComboBox, удалить ее с листа?
...
Рейтинг: 0 / 0
Как при выборе записи в ComboBox, удалить ее с листа?
    #38992611
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Kulakov OlegКак при выборе записи в ComboBox, удалить ее с листа?C какого листа? Как комбо с "листом" связан? Или это надо угадать?
...
Рейтинг: 0 / 0
Как при выборе записи в ComboBox, удалить ее с листа?
    #38992683
Дед Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть команды работы со списком в ComboBox (LstBox), если нет привязки к таблице:

*// удаление записи (в скобках указывается индекс записи)
This.RemoveItem(1)
*// добавление записи (в скобках текст добавления)
This.AddItem(This.Text)
*// очистка списка
This.Clear

Но что конкретно нужно в вашем вопросе, не понятно...
...
Рейтинг: 0 / 0
Как при выборе записи в ComboBox, удалить ее с листа?
    #38993003
Kulakov Oleg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sergey SizovKulakov OlegКак при выборе записи в ComboBox, удалить ее с листа?C какого листа? Как комбо с "листом" связан? Или это надо угадать?
из того же списка ComboBox.

Дед ЕвгенийЕсть команды работы со списком в ComboBox (LstBox), если нет привязки к таблице:

*// удаление записи (в скобках указывается индекс записи)
This.RemoveItem(1)
*// добавление записи (в скобках текст добавления)
This.AddItem(This.Text)
*// очистка списка
This.Clear

Но что конкретно нужно в вашем вопросе, не понятно...
Список не пирвязан к таблице. Может на примере покажете.
...
Рейтинг: 0 / 0
Как при выборе записи в ComboBox, удалить ее с листа?
    #38993156
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
oForm = CREATEOBJECT("Form")

oForm.AddObject("cmb", "ComboBox")
oForm.AddObject("txtChoice", "TextBox")
oForm.AddObject("cmdAdd", "My_CommandButton")

WITH oForm
	.WindowType = 1
	.AutoCenter = .T.
	.Width = 400
	.Height = 200
	.Caption = "Комбинированный список"
ENDWITH

WITH oForm.cmb
	.Style = 2
	.Left = 50
	.Top = 30
	.Width = 300
	.Sorted = .T.
	* Если RowSourceType = 1 , то список заполняется данными непосредственно указанными в свойтсве RowSource 
	.RowSourceType = 1					
	.RowSource = "Visual FoxPro,C++,Delphi,C#"
	.DisplayValue = "Visual FoxPro"
ENDWITH

WITH oForm.txtChoice
	.Left = 50
	.Top = 140
	.Width = 300
ENDWITH

WITH oForm.cmdAdd
	.Left = 120
	.Top = 85
	.Autosize = .T.
	.Caption = "Добавить в список"
ENDWITH

oForm.cmb.Visible = .T.
oForm.txtChoice.Visible = .T.
oForm.txtChoice.SetFocus
oForm.cmdAdd.Visible = .T.
oForm.Show

*--------------------------------------------------------------------
DEFINE CLASS My_CommandButton As CommandButton
	PROCEDURE Click
	
		* Проверяем, чтобы текстовое поле из которого будут попадать значения в комбинированный список было не пустым
		IF EMPTY(ThisForm.txtChoice.Value)
			WAIT "Пустое значение не добавляю !" WINDOWS NOWAIT
			ThisForm.txtChoice.SetFocus
			RETURN 
		ENDIF 
		
		* Добавляем значение текстового поля
		ThisForm.cmb.AddItem(ThisForm.txtChoice.Value)
		
		* Добавленный пункт определяем как выбранный
		ThisForm.cmb.Value = ThisForm.cmb.ListItem(ThisForm.cmb.NewItemID)
		
		* Очищаем текстовое поле
		ThisForm.txtChoice.Value = ""
		
		* Активизируем текстовое поле
		ThisForm.txtChoice.SetFocus
	ENDPROC
ENDDEFINE
...
Рейтинг: 0 / 0
Как при выборе записи в ComboBox, удалить ее с листа?
    #38994728
Дед Евгений
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот есть небольшой пример, который у меня используется при поиске. Ввод значения поиска пишется в ComboBox, и потом его и запоминает в нем. Получается окно ввода с памятью.
Код пишется в метод Valid

*// Если ничего не введено, или пустое значение - ничего не происходит
IF EMPTY(This.Text) &&.OR. ALLTRIM(This.Text) = ALLTRIM(This.Value)
RETURN
ENDIF
WITH Thisform
NewPopup = .T. && Признак записи в ComboBox
*// Сканируем существующий список, если уже такое значение (разрешать нам добавлять в список или нет)
FOR nn = 1 TO This.ListCount
IF This.List(nn) = ALLT(This.Text)
*// если такое значение уже найдено в списке, то признак записи принимает .F.
NewPopup = .F.
ENDIF
ENDFOR
*// Если такого значения нет в списке то его добавляем
IF NewPopup = .T.
*// Ограничение количества записей в списке равное 20, если больше, то первая запись удаляется, а текущая добавляется
IF This.ListCount >= 20
This.RemoveItem(1) && удаляем первую запись
ENDIF
This.AddItem(This.Text) && добавляем новую запись к текущим
ENDIF
Получается тут есть и добавление записи и удаление. А порядковый номер записи, это его индекс.
Поиграйся с этой процедурой.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Как при выборе записи в ComboBox, удалить ее с листа?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]