Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2003.08.18;
Скачать: [xml.tar.bz2];

Вниз

color button??   Найти похожие ветки 

 
sergiu   (2003-06-04 17:55) [0]

Можно ли получить из стандартного TButton кнопку с канвой для рисования или закрашивания. Надо писать новый компонент или можно как-то иначе ???
Спасибо.


 
Spawn   (2003-06-05 16:32) [1]

Если тебе надо получить канвас кнопки, то можно работать чисто на АПИ, но лучше связать контекст кнопки с классом TCanvas и воспользоваться его возможностями:

var
Dc:HDC;
Canvas:TCanvas;
begin
try
Dc:=GetDc(Button1.Handle);
Canvas:=TCanvas.Create;
Canvas.Handle:=Dc;
//Дальше пользуешься методами канваса
except
ReleaseDc(Button1.handle,Dc);
Canvas.Free;
end;
end;


 
VMcL   (2003-06-05 18:29) [2]

>Spawn © (05.06.03 16:32)

Сам хоть посмотрел, что написал? :)


 
Spawn   (2003-06-05 21:42) [3]

А что тебе не нравится? Я писал без дельфи может что упустил. Поделись если ты такой умный.


 
Spawn   (2003-06-05 21:44) [4]

То есть скажи в чем моя ошибка по твоему мнению, если ты такой умный. Я ни раз пользовался подобным способом и ни когда не было траблов.


 
VMcL   (2003-06-05 21:50) [5]

>Spawn © (05.06.03 21:44)

1. >скажи в чем моя ошибка
В ДНК :)

2. В твоём коде "Canvas.Free" срабатывает только при исключении.


 
VMcL   (2003-06-05 21:52) [6]

>Spawn © (05.06.03 21:44)
дополнение к >VMcL © (05.06.03 21:50)<
также как и ReleaseDc(Button1.handle,Dc);


 
Spawn   (2003-06-05 21:53) [7]

А я что обязан писать весь код???????????? Я написал часть кода необходимую на создание канваса кнопки. Все! Об остальном чел пускай сам позаботится. Мне просто смешно. Бери пример с Song-а ))).

П.С. Краткость - сестра таланта )))))


 
Song   (2003-06-05 22:14) [8]

Spawn, ты вместо того, чтобы чего-то писать, а потом терпеть замечание насчёт написанного собою же кода и потраченного на это времени, лучше бы дал ссылку: http://forum.vingrad.ru/index.php?act=ST&f=2&t=9098&s=af6e44723f05fdd98b26d95fbfb2dc2c


 
Spawn   (2003-06-05 22:28) [9]

Вот так всегда - хочешь как лучше, а получается все наоборот. :( Ладно пойду я отсюда - злые вы все тут.


 
Song   (2003-06-05 22:37) [10]

:)


 
VMcL   (2003-06-06 14:37) [11]

>Spawn © (05.06.03 21:53)

Я сделал замечание, потому что приведенный тобой код работает принципиально неправильно: 1. приложение "заграбастает" под себя хендл GDI и никому не отдаст :) 2. Не уничтожится экземпляр класса TCanvas.


 
Spawn   (2003-06-06 15:00) [12]

Я уже ответил, почему я так написал.


 
Игорь Шевченко   (2003-06-06 16:25) [13]

VMcL © (05.06.03 18:29)

Ну спутал человек except и finally - с кем не бывает :)))


 
sergiu   (2003-06-06 18:19) [14]

Принцип понял, спасибо Вам всем!
Да ище один мой коллега откопал где-то компонент TColorBtn, так что пиа для раздумий есть!
Еще раз спасибо! Удачи!


 
VMcL   (2003-06-06 18:49) [15]

>Игорь Шевченко © (06.06.03 16:25)

Только признаваться не хочет :D)



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

Форум: "Потрепаться";
Текущий архив: 2003.08.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.003 c
14-58402
Zheks
2003-08-04 10:57
2003.08.18
Мастера, продайте талант, расскажите как распечатать StringGrid.


14-58466
Julliete
2003-07-23 17:35
2003.08.18
Удаление всех записей из таблицы


14-58481
Vasya
2003-07-23 17:26
2003.08.18
Как получить события с сервера ?


14-58403
Dmitric
2003-08-01 17:34
2003.08.18
D3 -> XP


14-58385
Maks Realov
2003-08-04 15:33
2003.08.18
Размещение памяти под массив указателей.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский