ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #11  
Старый 08.01.2010, 01:01
Аватар для patcher
patcher
Познающий
Регистрация: 15.12.2009
Сообщений: 81
Провел на форуме:
393444

Репутация: 24
Отправить сообщение для patcher с помощью ICQ
По умолчанию

Вот набросал процедурку:
Код:
procedure DeleteChars(chars:string; Text:TStrings);
var i:integer;
begin
for i:=1 to length(chars) do
Text.Text:=StringReplace(Text.Text, chars[i], '', [rfReplaceAll, rfIgnoreCase]);
end;
пример использования:
Код:
DeleteChars(Edit1.Text, Memo1.Lines);
при выполнения этого кода все символы, находящиися в Едит1 будут удалены из Memo1
 
Ответить с цитированием

  #12  
Старый 08.01.2010, 12:46
Аватар для cheater_man
cheater_man
Постоянный
Регистрация: 13.11.2009
Сообщений: 437
Провел на форуме:
709575

Репутация: 17
По умолчанию

Помню курсе на 3-ем такую задачку на assembler'е решал
 
Ответить с цитированием

  #13  
Старый 08.01.2010, 14:12
Аватар для Markus_13
Markus_13
Познающий
Регистрация: 19.02.2009
Сообщений: 83
Провел на форуме:
181715

Репутация: 50
Отправить сообщение для Markus_13 с помощью ICQ
Talking

блин, все ваши методы лажа, чекбоксы рулят xD
вот наилучшая реализация такой проги: скриншот
Код для FormOnCreate:
Код:
procedure TForm1.FormCreate(Sender: TObject);
var b:byte; c:tCheckBox; e:tEdit; u:tButton; x,y,w,t:word;
begin
font:=screen.MenuFont;
canvas.Font:=font;
x:=8;y:=8;w:=0;
for b:=32 to 255 do begin
c:=tCheckBox.Create(self);c.Parent:=self;
c.Left:=x;c.Top:=y;c.Caption:=chr(b)+#32;
c.Hint:=c.Caption;c.ShowHint:=true;
c.Width:=canvas.TextWidth(c.Caption)+16;
c.Name:='c'+inttostr(b);c.Font:=canvas.Font;c.Show;
c.Checked:=(b>=$C0)or(b=$A8)or(b=$B8);
if b=255 then break;
t:=c.Width+8;
if t>w then w:=t;
inc(y,c.Height+8);
if y>clientHeight-18 then
begin inc(x,w);y:=8;end;
end;
clientWidth:=x+w;
e:=tEdit.Create(self);e.Parent:=self;
e.Left:=8;e.Top:=clientHeight-9;
e.AutoSize:=false;e.Width:=(clientWidth div 3)*2;
e.Name:='ee';e.Text:='test1АБВгде123';e.Show;
clientHeight:=e.Top+e.Height+9;
u:=tbutton.Create(self);u.Parent:=self;
u.Left:=e.Left*2+e.Width;u.Top:=e.Top;
u.Height:=e.Height;u.Width:=clientWidth-u.Left-9;
u.Caption:='Remove selected chars';
u.OnClick:=ButtonClick;
end;
Код для ButtonClick:
Код:
procedure TForm1.ButtonClick(Sender: TObject);
var k:word; b:byte; s:string;
begin
s:=tEdit(FindComponent('ee')).Text;
if length(s)=0 then exit;
for k:=1 to length(s)do begin
b:=ord(s[k]);if b<32 then b:=1 else
if tCheckBox(FindComponent('c'+inttostr(b))).Checked
then b:=1;s[k]:=chr(b);
end;k:=1;
while k<=length(s)do if s[k]=#1 then delete(s,k,1)else inc(k);
tEdit(FindComponent('ee')).Text:=s;
application.MessageBox('All selected chars removed!','');
end;
не забудьте также прописать FormCaption! это самое главное!!!
 
Ответить с цитированием

  #14  
Старый 08.01.2010, 14:35
Аватар для nerezus
nerezus
Pagan Heart
Регистрация: 12.08.2004
Сообщений: 3,791
Провел на форуме:
6490435

Репутация: 2290


Отправить сообщение для nerezus с помощью ICQ
По умолчанию

Цитата:
procedure TForm1.FormCreate(Sender: TObject);
var b:byte; c:tCheckBox; e:tEdit; u:tButton; x,y,w,t:word;
begin
font:=screen.MenuFont;
canvas.Font:=font;
x:=8;y:=8;w:=0;
for b:=32 to 255 do begin
c:=tCheckBox.Create(self);c.Parent:=self;
c.Left:=x;c.Top:=y;c.Caption:=chr(b)+#32;
c.Hint:=c.Caption;c.ShowHint:=true;
c.Width:=canvas.TextWidth(c.Caption)+16;
c.Name:='c'+inttostr(b);c.Font:=canvas.Font;c.Show ;
c.Checked:=(b>=$C0)or(b=$A8)or(b=$B8);
if b=255 then break;
t:=c.Width+8;
if t>w then w:=t;
inc(y,c.Height+8);
if y>clientHeight-18 then
begin inc(x,w);y:=8;end;
end;
clientWidth:=x+w;
e:=tEdit.Create(self);e.Parent:=self;
e.Left:=8;e.Top:=clientHeight-9;
e.AutoSize:=false;e.Width:=(clientWidth div 3)*2;
e.Name:='ee';e.Text:='test1АБВгде123';e.Show ;
clientHeight:=e.Top+e.Height+9;
u:=tbutton.Create(self);u.Parent:=self;
u.Left:=e.Left*2+e.Width;u.Top:=e.Top;
u.Height:=e.Height;u.Width:=clientWidth-u.Left-9;
u.Caption:='Remove selected chars';
u.OnClick:=ButtonClick;
end;
Суперчитаемый код *ROFL*
 
Ответить с цитированием

  #15  
Старый 08.01.2010, 14:43
Аватар для __mad
__mad
Участник форума
Регистрация: 04.11.2007
Сообщений: 103
Провел на форуме:
548128

Репутация: 104
По умолчанию

Цитата:
вот наилучшая реализация такой проги: скриншот
Если б чекбоксы были в одну колонку, то да, согласен, а так не дотягивает.
 
Ответить с цитированием

  #16  
Старый 08.01.2010, 14:58
Аватар для Markus_13
Markus_13
Познающий
Регистрация: 19.02.2009
Сообщений: 83
Провел на форуме:
181715

Репутация: 50
Отправить сообщение для Markus_13 с помощью ICQ
По умолчанию

Цитата:
Суперчитаемый код *ROFL*
это обфускация xD
шутка, я всегда так пишу, это еще я строки покороче сделал, обычно у меня строка такойже длины как окно компилятора - чтобы как можно больше кода на одном экране было видно =)

Цитата:
Если б чекбоксы были в одну колонку, то да, согласен, а так не дотягивает.
для тебя специально могу VIP версию написать - тока я неуверен что у тя разрешение экрана позволит видеть все чекбоксы)))
 
Ответить с цитированием

  #17  
Старый 08.01.2010, 18:31
Аватар для Gar|k
Gar|k
Постоянный
Регистрация: 20.03.2009
Сообщений: 564
Провел на форуме:
991929

Репутация: 395


По умолчанию

Цитата:
Сообщение от Markus_13  
обычно у меня строка такойже длины как окно компилятора
если устроишься куда-то работать или будешь писать код не один - будешь анально наказан
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Интервью с сотдрудником отдела "К" elimS2 Мировые новости 69 12.11.2009 18:02
Как грамотно убить компьютер [AG] Статьи 12 06.10.2009 14:39
Как стать админом ICQ (c) yarrak InfernoNet Болталка 77 06.08.2009 15:15
Как стать хакером! foreva Болталка 19 12.12.2007 00:12
FAQ по выделенным серверам (Dedicated Servers) byte57 Чужие Статьи 4 16.11.2006 22:03



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ