C++ C++ C# C# ASP.NET Security ASP.NET Security ASM ASM Скачать Скачать Поиск Поиск Хостинг Хостинг  
  Программа для работы с LPT портом...
Язык: .NET — ©Alexey...
  "ASP.NET Atlas" – AJAX в исполнении Micro...
Язык: .NET — ©legigor@mail.ru...
  "Невытесняющая" Многопоточность...
Язык: C/C++ — ©...
  01.05.2010 — Update World C++: Сборник GPL QT исходников
  15.12.2007 — Весь сайт целиком можно загрузить по ссылкам из раздела Скачать
Хостинг:
Windows 2003, ASP.NET 2.0
бесплатный и от 80 руб./мес


   Отправить письмо
Кулабухов Артем, Беларусь




 114 - Фильтр / MFC шаг за шагом / Visual C++

Шаг 114 - Фильтр

Итак, выбрать необходимые записи можно многими путями, один из таких путей это фильтр. Давайте создадим для него кнопку и код к ней.

114_1.gif (3537 b)

void CTestMemoView::OnButton32773() 
{
	// TODO: Add your command handler code here
	
}
Теперь надо решить как вводить фильтр. Давайте сделаем для него диалоговое окно из элемента Edit. Идея такова ввел слово и по полю Name отфильтровали записи. Создаем диалоговое окно.

114_2.gif (1718 b)

Теперь для этого окна нужен класс. Выделите диалогвое окно и запустите ClassWizard. Вам в ответ должны предложить создать класс, а вы согласиться. Когда спросят имя дайте ему имя СFiltrDialog. Теперь нужно создать переменную для элемента Edit. Опять выделите её и запустите ClassWizard. Переключитесь на Memder Variable, щелкните на Add Variable и дайте имя m_Filtr. Теперь в файле реализации TestMemoView.cpp необходимо подключить заголовок диалогового окна. Вот так.

.........
#include "TestMemoView.h"
#include "FiltrDialog.h"

#ifdef _DEBUG
.......
Вот теперь все приготовления сделаны и можно кодировать.
void CTestMemoView::OnButton32773() 
{
	CFiltrDialog cf;
	if (cf.DoModal()==IDOK)
	{
		CString filt="NAME = '";
		filt=filt+cf.m_Filtr;
		filt= filt +"' ";
		m_pSet->m_strFilter= filt; 
		m_pSet->Requery(); 
		UpdateData(FALSE);
	}
}
Сначала мы собираем строку для фильтра, она должна быть такая
ПОЛЕ = 'ЗНАЧЕНИЕ'

Устанавливаем m_strFilter, а дальше как обычно перечитать и обновить.

Когда будете проверять сделайте несколько групп одинаковых записей по полю NAME. У меня работает.


Загрузить проект | | |
Автор Каев Артем.
[AD]