Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.06.05;
Скачать: CL | DM;

Вниз

Посоветуйте плз при помощи какого компонента сделать?   Найти похожие ветки 

 
advise ©   (2011-02-28 14:59) [0]

Добрый день, подскажите плз на каком компоненте реализовать такую задачу.
Есть таблица (размер задается пользователем) также пользователь может задать цвет каждой ячейки таблицы , при помощи смешения трех цветов(допустим будет вводить их 0-255 в поле Edit) , а выбранная ячейка изменять цвет.


 
Palladin ©   (2011-02-28 15:01) [1]

напишу и продам за 500 еврорублей


 
Dennis I. Komarov ©   (2011-02-28 15:01) [2]

Советую:
TSuperGrid = class(TCustomGrid)
...
end;


 
Palladin ©   (2011-02-28 15:02) [3]

привлеку Dennis I. Komarov (С), 500 каждому


 
Anatoly Podgoretsky ©   (2011-02-28 16:02) [4]

> Palladin  (28.02.2011 15:02:03)  [3]

Эксель, и мне тоже 500


 
advise ©   (2011-02-28 16:06) [5]

Где TCustomGrid находится , облазил все вкладки D7, не нашел?


 
Palladin ©   (2011-02-28 16:07) [6]

цена занижена, всем троим по 700, +100 мне как организатору!


 
Противный   (2011-02-28 16:09) [7]

advise ©   (28.02.11 16:06) [5] Где TCustomGrid находится , облазил все вкладки D7, не нашел?

Пошли СМС с текстом TCustomGrid на короткий номер 1234567890, и получишь код разблокировки секретной вкладки с TCustomGrid!
Внимание! Акция! Отправившему СМС в течение 10 минут - бесплатная разблокировка вкладки с TComponent!


 
Dennis I. Komarov ©   (2011-02-28 16:10) [8]

В grids он


 
Противный   (2011-02-28 16:12) [9]

В grids он

Даня, я же тебя просил, не пали гешефт, вечно ты со своим альтруизмом...


 
Dennis I. Komarov ©   (2011-02-28 16:20) [10]


> Противный   (28.02.11 16:12) [9]

Сгинь, нечистый...


 
advise ©   (2011-02-28 16:22) [11]

спасибо!


 
Противный   (2011-02-28 16:27) [12]

advise ©   (28.02.11 16:22) [11] спасибо!

Успел таки! Молодец!

А теперь отправь СМС с текстом Advise© на короткий номер 1234567890, и стань участником розыгрыша модуля Unit1.pas! Спеши! Разыгрывается всего 2 экземпляра!


 
Anatoly Podgoretsky ©   (2011-02-28 16:37) [13]

> advise  (28.02.2011 16:06:05)  [5]

Его нет на вкладках


 
Игорь Шевченко ©   (2011-02-28 18:47) [14]

У меня готовый компонент есть, даже писать не надо. Продам дорого


 
И. Павел ©   (2011-02-28 18:56) [15]

В событии OnDrawColumnCell StringGrid можно что угодно делать:
http://www.sql.ru/forum/actualthread.aspx?tid=322349

http://www.google.ru/search?sourceid=chrome&ie=UTF-8&q=StringGrig%D1%80%D0%B0%D1%81%D0%BA%D1%80%D0%B0%D1%81%D0%B8%D1%82%D1%8C#q=StringGrid+%D1%80%D0%B0%D1%81%D0%BA%D1%80%D0%B0%D1%81%D0%B8%D1%82%D1%8C&hl=ru&newwindow=1&prmd=ivnsfd&ei=68JrTefGJMiAOvyTvJEL&start=10&sa=N&fp=7171aa c799310be8

PS: Автору вопроса 15 лет, если не притворяется. Я в 15 лет что такое Delphi-то не знал. И даже традиционное высшее образование в анкете не поставил. Поощрять надо :)


 
Palladin ©   (2011-02-28 19:05) [16]

парадигма компонентокидательского подхода все портит... не умеет он писать, не научится, пусть платит, фикли


 
advise ©   (2011-02-28 23:09) [17]


> парадигма компонентокидательского подхода все портит...
> не умеет он писать, не научится, пусть платит, фикли

Может книжку посоветуете , те книги что у меня есть, рассматривают работу с готовыми компонентами , не объясняя как на основе этих компонентов создать новый с новыми св-ми и методами.
Просто описан компонент его методы и св-ва.


 
Германн ©   (2011-02-28 23:26) [18]


> Может книжку посоветуете

http://www.delphimaster.ru/books/1656145/


 
Юрий Зотов ©   (2011-02-28 23:38) [19]

О!  Я тоже в 15 лет не знал, что такое Delphi. Коллега!


 
Amoeba_   (2011-03-01 00:12) [20]


> Может книжку посоветуете

Посоветую:
http://podgoretsky.com/ddp/OtherDDP.aspx

P.S. Анатолий, неужели так трудно быть милосердным и сразу  послать несчастного "чайника" на свой сайт за умом-разумом?


 
advise ©   (2011-03-01 00:47) [21]

Посоветуйте в чем может быть дело? Написал программу изменение цвета выбранной ячейки StringGrid в зависимости от положения трех trackBaroв на каждый цвет RGB. Цвет ячейки stringGrid меняется в обработчике StringGrid1OnDrawCell


Обработка первого трэк бара , остальные два также
procedure TForm1.TrackBar1Change(Sender: TObject);
begin
Edit1.Text:=(Inttostr(TrackBar1.Max-TrackBar1.Position));
end;

Обработчик StringGrid1OnDrawCell
procedure TForm1.StringGrid1OnDrawCell(Sender: TObject; ACol,
 ARow: Integer; Rect: TRect; State: TGridDrawState);
var i:integer;
begin
i:=1;
form1.Memo1.Lines.Append("i="+inttostr(i)+"  "); // печать, попал в обработчик

if (gdSelected in State) then  // выбрана ячейка
                    begin
    StringGrid1.Canvas.Brush.color:=RGB(
TrackBar1.Max-TrackBar1.Position+TrackBar1.Min,
TrackBar2.Max-TrackBar2.Position+TrackBar2.Min,
TrackBar3.Max-TrackBar3.Position+TrackBar3.Min);
    StringGrid1.Canvas.FillRect(Rect);
    StringGrid1.Canvas.TextOut(Rect.Left,Rect.Top,StringGrid1.Cells[ACol,ARow]);
                    end;
end;



В итоге работы программы цвет выбранной ячейки не меняется , но если выбрать следующую ячейку , то у ней появляется цвет первой ячейки, а у первой ячейки цвет не сохраняется.
Вопрос
1). Как сделать чтобы при снятии выделения с ячейки ее цвет сохранялся?
2). Как сделать чтобы изменялся цвет текущей выбранной ячейки?
3). На сколько мои вопросы тупые?


 
Германн ©   (2011-03-01 02:50) [22]


> Юрий Зотов ©   (28.02.11 23:38) [19]
>
> О!  Я тоже в 15 лет не знал, что такое Delphi. Коллега!
>

:)


 
Германн ©   (2011-03-01 02:56) [23]


> В итоге работы программы цвет выбранной ячейки не меняется

А чему равен DefaultDrawing?


 
Тяни-Толкай   (2011-03-01 09:49) [24]

>> В итоге работы программы цвет выбранной ячейки не меняется

procedure TForm1.TrackBar1Change(Sender: TObject);
begin
 Edit1.Text:=(Inttostr(TrackBar1.Max-TrackBar1.Position));
 StringGrid1.Invalidate; // Это заставит систему перерисовать весь StringGrid1 заново
 // Но лучше перерисовывать только текущую ячейку, используя InvalidateRect(StringGrid1.Handle, ...)
end;


>> то у ней появляется цвет первой ячейки

Он не "появляется", ты его сам рисуешь в TForm1.StringGrid1OnDrawCell().

>> а у первой ячейки цвет не сохраняется.

А почему он должен сохраняться? И где он должен храниться?

>> 1). Как сделать чтобы при снятии выделения с ячейки ее цвет сохранялся?

Он сам сохраняться не будет. Сохранять цвет ячейки - твоя задача.

>> 3). На сколько мои вопросы тупые?

42


 
Тяни-Толкай   (2011-03-01 09:50) [25]

47


 
Тяни-Толкай   (2011-03-01 09:50) [26]

Хотя нет, все же 42



Страницы: 1 вся ветка

Текущий архив: 2011.06.05;
Скачать: CL | DM;

Наверх




Память: 0.53 MB
Время: 0.01 c
2-1298644603
grigor
2011-02-25 17:36
2011.06.05
Проблема с потоками


2-1298365017
oleg_teacher
2011-02-22 11:56
2011.06.05
Таблицы, word, delphi


1-1256130157
sniknik
2009-10-21 17:02
2011.06.05
Узнать позицию (индекс) текущей строчки меню TMainMenu.TMenuItem


2-1298780760
filimonic
2011-02-27 07:26
2011.06.05
Как заблокировать кнопку Пуск в Windows 7


2-1298399817
aka
2011-02-22 21:36
2011.06.05
TreeView