Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 12:50 24.04.24 
Клубове/ Компютри и Интернет / Delphi Всички теми Следваща тема Пълен преглед*
Информация за клуба
Тема Re: Проблем с оцветяването [re: ozzoz]
Автор s1ckbOy (непознат )
Публикувано28.05.09 10:50  



Имам Page Control с два TabSheet-a. На единият TabSheet имам DBGrid който ми визуализира само някои от полетата в таблица от БД, и бутон с процедура която ще обходи всички записи. На другия TabSheet имам DBEdit компоненти които визуализират всички полета от таблицата в БД за текущият запис (този който в момента е посочен в Grid-a на Tabsheet1). Процедурата ми прави текстов файл в който са ми нужни някои полета които DBGrid-a не показва. Така процедурата прави проверка кои не са попълнени преди да генерира текстовия файл и ако има такива сменям от Tabsheet1 ---> на Tabsheet2 и оцветявам всички празни DBEdit-и в червено и казвам "Червените полета са задължителни трябва да се попълнят"....

Например:

Ако имам празни полета в 20тия запис от Grida процедурата спира , показва Tabsheet2 и оцветява кое да се попълни. Правя си корекциите и пускам отново. Намирам пак празни полета на 32рия запис и процедурата отново ме прехвърля на Tabsheet2, но не оцветява

!! Работата е там че записите нямат номерация и немога да ги обходя и посоча всички които имат празни полета още в началото.

//-------------------------------------- Проверката-----------------------------------//
function TfDokumenti.CheckFields: Boolean;
var Poleta:TStringList;
j:integer;
begin
Poleta:=TStringList.Create;
Result:=True;
if dmLocal.sqPlatejniDATA_PREDST.AsString=EmptyStr then Poleta.Add('dbeDataPredst');
if dmLocal.sqPlatejniDATA_DOK.AsString=EmptyStr then Poleta.Add('dbeDokData');
if dmLocal.sqPlatejniDATA_IZPAL.AsString=EmptyStr then Poleta.Add('dbeDataIzpaln');
if dmLocal.sqPlatejniIBAN.AsString=EmptyStr then Poleta.Add('dbeBankaIBAN');
if dmLocal.sqPlatejniNAREDITEL.AsString=EmptyStr then Poleta.Add('dbeNareditel');
if dmLocal.sqPlatejniBIC.AsString=EmptyStr then Poleta.Add('dbeBankaBIC');
if dmLocal.sqPlatejniBANKA_IME.AsString=EmptyStr then Poleta.Add('dbeBankaIme');
if dmLocal.sqPlatejniKL_BIC.AsString=EmptyStr then Poleta.Add('dbeKlBankaBIC');
if dmLocal.sqPlatejniKL_BANKA_IME.AsString=EmptyStr then Poleta.Add('dbeKlBankaIme');
if Poleta.CommaText<>EmptyStr then
begin
TabSheet2.Show;
for j:=0 to Poleta.Count-1 do
begin
if FindComponent(Poleta.Strings[j]).ClassNameIs('TDBEdit') then
begin
(FindComponent(Poleta.Strings[j]) as TDBEdit).Color:=clRed;
(FindComponent(Poleta.Strings[j]) as TDBEdit).Repaint;
end;
end;
MessageDlg('Попълни червените!',mtWarning,[mbOK],0);
Result:=False;
FreeAndNil(Poleta);
end;
//---------------------------------------------------------------------------------------//

Ако това нещо върне false процедурата ми спира.



Цялата тема
ТемаАвторПубликувано
* Проблем с оцветяването s1ckbOy   25.05.09 12:12
. * Re: Проблем с оцветяването ozzoz   26.05.09 12:07
. * Re: Проблем с оцветяването s1ckbOy   28.05.09 10:50
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.