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

Вниз

onDrawCell в mdvXLGrid   Найти похожие ветки 

 
<Falcon>   (2004-02-19 13:06) [0]

Вопрос следующего плана:
  в продцедуре onDrawCell при использовании ACanvas.TextWidth перестает отображаться содержимое ячеек у которых в текущий момент нет фокуса.
Если убрать TextWidth, все нормально. Кто-нибудь может объяснить почему?


 
Gandalf ©   (2004-01-23 13:50) [1]

Я давно обратил внимание Кладова на данный баг, но его до сих пор не исправили... я знаю как его устранить но не исправить:



function TCanvas.TextExtent(const Text: string): TSize;
var DC : HDC;
   ClearHandle : Boolean;
begin
 //Result.cX := 0;
 //Result.cY := 0;
 ClearHandle := False;
 RequiredState( HandleValid or FontValid );
 DC := fHandle;
 if DC = 0 then
 begin
    DC := CreateCompatibleDC( 0 );
    ClearHandle := True;
    SetHandle( DC );
 end;
//********************************************************** // Added By Gerasimov
//*
//  If Not fIsPaintDC then ClearHandle := True; // Вот строку мы закоментили



Хотя возможно у тебя другой случай...


 
<Falcon>   (2004-02-24 16:27) [2]

Попробовал. Сделал. Помогло. Спасибо за совет.


 
Владимир Кладов   (2004-02-24 20:17) [3]

Тут такая штука. Закомментарить недолго. А вот последствия кто-нибудь тестировал? По-моему, может возникнуть ситуация с большим перерасходом GDI-ресурсов. Ладно, сделаем так: по символу условной компиляции: NOT_CLEAR_CANVAS_IN_TEXTEXTENT. Такое решение тоже не очень хорошо. Может, кто-нибудь все-таки возьмется досконально разобраться, в чем там дело, и как двух зайцев убить - и канву нормально высвобождать, и рисование чтобы не прекращалось?


 
Gandalf ©   (2004-02-25 20:19) [4]

2Владимир Кладов
 Полностью согласен - я и говорю что это не исправление. Ладно он меня достал - попробую взяться серьезно, а то он у меня в нескольких прогах выскакивает.

ЗЫ: Еще бага - бросил ToolBar - снял с него Align=none, и положил одну кнопку, потом поставил ему размеры акурат в эту кнопку (чуть больше... Width,height) - но он после октрытия закрытия - отвоевывает свои размеры - делаясь длинным!


 
Владимир Кладов   (2004-02-28 13:07) [5]

Тулбар вообще особый контрол. Он себе высоту любит сам выставлять. Из-за этого уже были проблемы в начале, когда KOL создавался. Есть еще combobox примерно так же свою высоту уточняющий. И требуется иногда осторожность с listbox"ом (когда IntegralHeight).


 
Gandalf ©   (2004-02-28 16:27) [6]

Я про ширину Width - она глючит.



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

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

Наверх




Память: 0.45 MB
Время: 0.026 c
9-1080912585
KA_
2004-04-02 17:29
2004.07.25
Сценарий игры - ругайте :)


1-1089552359
Tahion2
2004-07-11 17:25
2004.07.25
Добавить прозрачную Label на CoolBar без полосы.


1-1089297274
lion
2004-07-08 18:34
2004.07.25
параметры файла


14-1088875636
Sanek_metaller
2004-07-03 21:27
2004.07.25
Мисс Вселенная 2004


1-1089636446
bobj
2004-07-12 16:47
2004.07.25
TDate и Windows





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский