powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Аля пятнашки
6 сообщений из 6, страница 1 из 1
Аля пятнашки
    #32122513
Каспер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Привет всем !
Подскажите плиз.
Хочу создать простенький класс (не знаю от кого брать) ШАРИК.
У него такие свойства нужные мне ВЕС, НОМЕР.
Вспомогательные РАЗМЕР,ЦВЕТ, ПОЛОЖЕНИЕ (потом пригодиться).
1 . Чтоб его можно было кидать на любой визуальный компонент (создавать ШАРИК буду во время run-time).
2. Его можно было в run-time таскать мышой по форме и где нить отпускать.
3. На шарике был номер.
Проблема в том что не знаю какой класс брать за папу чтоб потом в мой класс добавить ЛАБЕЛ -для номера шарика и Shape - собственно шарик.

4!!!
Главное чтобы потом на основе этого класса можно было бы создать компонент КОРЗИНА (вид сверху должна иметь) в него я бы мог отпускать ШАРИКИ. И они там не смешивались а ложились на места рядом. В КОРЗИНЕ ограниченно место.
Очень похоже выглядят пятнашки

1 2 3
4 5 6
7 8 Х

Это что типа начала бывшего но номера на шарике не выводиться
TBall = class (TGraphicControl)
end;
TMoney = class(TShape)
Num:TLabel;
public
constructor Create(AOwner:TComponent); override;
private
{ Private declarations }
TNormal:boolean;
TSize:integer;
function GetCaption: TCaption;
procedure SetCaption(const Value: TCaption);
procedure SetSize(const Value: integer);
published
property Normal:boolean read TNormal write TNormal;
property Caption:TCaption read GetCaption write SetCaption;
property Size:integer read TSize write SetSize;
end;

implementation

{ TMoney }

constructor TMoney.Create(AOwner: TComponent);
var N:TLabel;
begin
inherited;
Shape:=stCircle;
Brush.Color:=clRed;
Normal:=True;
Size:=10;
N:=TLabel.Create(self);
// N.Parent:=self. ;
N.Caption:='0';
N.Left:=3;
N.Top:=3;
// N.Font:=Font;
end;

function TMoney.GetCaption: TCaption;
begin
result:=Num.Caption;
end;

procedure TMoney.SetCaption(const Value: TCaption);
begin
Num.Caption:=Value;
end;

procedure TMoney.SetSize(const Value: integer);
begin
Width:=Value;
Height:=Value;
end;

Заморочился с ПАРЕНТОМ надписи - думаю что у нее должен быть = Shapу на котором надпись лежит. И с движением шарика...
Если кто сможет помочь - откликнитесь плиз.
А то я начинаю уже думать что класс ШАРИК брать не от TShape а от TGraphicControl...
Спасибо
...
Рейтинг: 0 / 0
Аля пятнашки
    #32122619
Фотография maloi_alex
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все зависит от того каклй у тебя шарик: теннисный, билльярдный или надувной.
...
Рейтинг: 0 / 0
Аля пятнашки
    #32122624
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
Каспер, возьми класс TImage и будет тебе щастье
...
Рейтинг: 0 / 0
Аля пятнашки
    #32122722
Каспер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2 Малой - Не думаю :)

2 eNose - а почему имидж именно??? Раскрой плиз.
...
Рейтинг: 0 / 0
Аля пятнашки
    #32122742
Фотография eNose
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[не активирован]
[не одобрен]
1. С помощью MaskColor (или как его там) можно сделать круг.
2. Таскать по форме можно сколько угодно почти без доп. кода (drug`n`drop).
3. Текст прямо на канву можно вставить (ну это как и везде...).

Короче - не надо объединять TShape и TLabel, когда можно взять предка и по-лучше.
...
Рейтинг: 0 / 0
Аля пятнашки
    #32122811
Каспер
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо eNose
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Аля пятнашки
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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