Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 19.12.2010, 21:38
Димона Димона вне форума
Прохожий
 
Регистрация: 19.12.2010
Сообщения: 17
Репутация: 12
Сообщение немного строк и события мыши

1.при нажатии левой кнопки мыши появляется кружочек.

Код:
if button=mbleft then shape1.shape:=stcircle;

а как чтобы при нажатии кнопки мыши в любом месте на форме?

2. вывести слова исходного текста без центрального символа

Код:
var
s:string;
dl,p,k,sl:integer;
begin
s:=memo1.lines.text;
dl:=length(s);
while pos(' ',s)<>0 do begin
p:=pos(' ',s);
sl:=copy(s,1,p-1);
k:=sl div 2;
delete(s,k,1);
end;
memo2.lines.add(s);
end;
вот че-то думала и не додумала..
Ответить с цитированием
  #2  
Старый 19.12.2010, 22:13
stil stil вне форума
Новичок
 
Регистрация: 24.11.2010
Сообщения: 91
Репутация: 41
По умолчанию на первый вопрос

Код:
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
  var s: TShape;
begin
if Button=mbLeft then begin
  s:=TShape.Create(form1);
  with s do begin
    Parent:=form1;
    Height:=100;
    Width:=100;
    Shape:=stcircle;
    Top:=Y-trunc(S.Height/2);
    Left:=X-trunc(S.Width/2);
  end;
end;
end;
Ответить с цитированием
  #3  
Старый 19.12.2010, 22:25
stil stil вне форума
Новичок
 
Регистрация: 24.11.2010
Сообщения: 91
Репутация: 41
По умолчанию второй вопрос

Код:
var
s:string;
dl,k:integer;
begin
s:=memo1.lines.text;
dl:=length(s);
k:=dl div 2;
delete(s,k,1);
memo2.lines.add(s);
end;
Ответить с цитированием
  #4  
Старый 19.12.2010, 22:47
Димона Димона вне форума
Прохожий
 
Регистрация: 19.12.2010
Сообщения: 17
Репутация: 12
По умолчанию аа

Цитата:
Сообщение от stil
Код:
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
  var s: TShape;
begin
if Button=mbLeft then begin
  s:=TShape.Create(form1);
  with s do begin
    Parent:=form1;
    Height:=100;
    Width:=100;
    Shape:=stcircle;
    Top:=Y-trunc(S.Height/2);
    Left:=X-trunc(S.Width/2);
  end;
end;
end;
а тут по другому никак?..
Ответить с цитированием
  #5  
Старый 19.12.2010, 22:49
Димона Димона вне форума
Прохожий
 
Регистрация: 19.12.2010
Сообщения: 17
Репутация: 12
Сообщение я так пробовала

Цитата:
Сообщение от stil
Код:
var
s:string;
dl,k:integer;
begin
s:=memo1.lines.text;
dl:=length(s);
k:=dl div 2;
delete(s,k,1);
memo2.lines.add(s);
end;

но она работает только если я ввожу 1 слово.. а если несколько..?
Ответить с цитированием
  #6  
Старый 19.12.2010, 22:56
stil stil вне форума
Новичок
 
Регистрация: 24.11.2010
Сообщения: 91
Репутация: 41
По умолчанию

Цитата:
Сообщение от Димона
а тут по другому никак?..
а чем не нравиться или тебе только один нужен
Ответить с цитированием
  #7  
Старый 19.12.2010, 22:58
stil stil вне форума
Новичок
 
Регистрация: 24.11.2010
Сообщения: 91
Репутация: 41
По умолчанию про второй

тебе нужно в каждом слове центральный символ удалить?

Последний раз редактировалось stil, 19.12.2010 в 23:02.
Ответить с цитированием
  #8  
Старый 19.12.2010, 23:18
Димона Димона вне форума
Прохожий
 
Регистрация: 19.12.2010
Сообщения: 17
Репутация: 12
Сообщение ..

Цитата:
Сообщение от stil
тебе нужно в каждом слове центральный символ удалить?
да! в каждом)
Ответить с цитированием
  #9  
Старый 19.12.2010, 23:19
Димона Димона вне форума
Прохожий
 
Регистрация: 19.12.2010
Сообщения: 17
Репутация: 12
По умолчанию

Цитата:
Сообщение от stil
а чем не нравиться или тебе только один нужен
у меня ошибку в варе выдает - эт раз)
а второе .. рандомом там никак нельзя?)
Ответить с цитированием
  #10  
Старый 19.12.2010, 23:30
stil stil вне форума
Новичок
 
Регистрация: 24.11.2010
Сообщения: 91
Репутация: 41
По умолчанию вот по словам

Код:
var
s,s1:string;
dl,d2,k,j:integer;
begin
s1:='';
s:=memo1.lines.text;
j:=pos(' ',s);
while j>0 do begin
  delete(s, j div 2, 1);
  s1:=s1+copy(s,1,j);
  delete(s,1,j);
  j:=pos(' ',s);
end;
  j:=Length(s);
  delete(s, j div 2, 1);
  s1:=s1+copy(s,1,j);
  memo2.lines.add(s1);
end;

Последний раз редактировалось stil, 19.12.2010 в 23:38.
Ответить с цитированием
  #11  
Старый 19.12.2010, 23:36
stil stil вне форума
Новичок
 
Регистрация: 24.11.2010
Сообщения: 91
Репутация: 41
По умолчанию по строкам и словам

Код:
var
s,s1:string;
dl,d2,k,j, i:integer;
begin
s1:='';
for i:=0 to memo1.Lines.Count-1 do begin
  s:=memo1.lines[i];
  j:=pos(' ',s);
  while j>0 do begin
    delete(s, j div 2, 1);
    s1:=s1+copy(s,1,j);
    delete(s,1,j);
    j:=pos(' ',s);
  end;
    j:=Length(s);
    delete(s, j div 2, 1);
    s1:=s1+copy(s,1,j);
    memo2.lines.add(s1);
    s1:='';
end;
end;

Последний раз редактировалось stil, 19.12.2010 в 23:38.
Ответить с цитированием
  #12  
Старый 19.12.2010, 23:43
stil stil вне форума
Новичок
 
Регистрация: 24.11.2010
Сообщения: 91
Репутация: 41
По умолчанию

в первом добавь
Код:
uses ExtCtrls
и вместо
Код:
Top:=Y-trunc(S.Height/2);
Left:=X-trunc(S.Width/2);
замени на
Код:
Randomize;
left:=random(form1.ClientWidth-Width);
top:=random(form1.ClientHeight-Height);

Последний раз редактировалось stil, 19.12.2010 в 23:56.
Ответить с цитированием
  #13  
Старый 20.12.2010, 00:04
Димона Димона вне форума
Прохожий
 
Регистрация: 19.12.2010
Сообщения: 17
Репутация: 12
По умолчанию :)

спасибо большое!
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 19:18.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025