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

Вниз

Можно ли в TItemMenu у которого есть ImageIndex > -1 вывести   Найти похожие ветки 

 
Вован   (2003-09-09 13:15) [0]

галочку Checked?


 
ZEE   (2003-09-09 13:25) [1]

при Checked=true "галочки" не будет, а будет картинка вдавленая (т.е. с бордером вокруг)


 
Вован   (2003-09-09 17:16) [2]

Что-то не вдавливается.


 
clickmaker   (2003-09-09 17:51) [3]

Значит не checked


 
ZEE   (2003-09-09 17:54) [4]

кстати МенюИтем сам "чекнутым" не станет - надо самому его "чекать"
на OnClick повесь что-то типа
MyMenuItem.Checked:=not MyMenuItem.Checked;


 
Вован   (2003-09-09 17:56) [5]

Не, ну без картинки же "чекается".


 
ZEE   (2003-09-09 17:59) [6]

сори, не учел AutoCheck
но у меня все-равно чекнутые итемы получаются с вдавленными картинками


 
Вован   (2003-09-09 18:05) [7]

У тебя хоть что-то получается. А у меня даже если в десигне выставляю Cjtcked=true в рантайме картика не вдавливается


 
Calm   (2003-09-09 18:17) [8]

2 Вован
Может у тебя на MenuItem прицеплен action, а ты пытаешься изменить настройки самого item"а?

Если есть action, то нужно в нем делать.


 
Вован   (2003-09-09 18:24) [9]

Так так и делаю:

if (Optinos and dro_Fixed)=dro_Fixed then
TAction(Sender).Checked:=true

Я же говорю без картики влажок ставится
Может это из-за D7, наверно прийдется дебакить drow этого ItemMenu
Только где BraekPoint поставить


 
ZEE   (2003-09-09 18:27) [10]

[9] - попробуй без акшна чекать - если получится - то дело в нем...


 
Вован   (2003-09-09 18:34) [11]

Не помогает


 
ZEE   (2003-09-09 18:44) [12]

т.е. - даже чекнутый итем с картинкой и без акшна (и лучше без эвентсов) - получается не вдавленым?..
зы: и еще проверь RadioItem=false и GroupIndex=0


 
Вован   (2003-09-09 19:08) [13]

Угу

object fggfhggfg1: TMenuItem
AutoCheck = True
Caption = "fggfhggfg"
Checked = True
ImageIndex = 7
end


 
Вован   (2003-09-09 20:05) [14]

Помойму нашел.
У TMenuItem в NormalDraw есть такие фразы:


{ Draw background pattern brush if selected }
if Checked and not WinXP then
begin
Inc(GlyphRect.Right);
Inc(GlyphRect.Bottom);
OldBrushColor := Brush.Color;
if not (odSelected in State) then
begin
OldBrushColor := Brush.Color;
Brush.Bitmap := AllocPatternBitmap(clBtnFace, clBtnHighlight);
FillRect(GlyphRect);
end
else
begin
Brush.Color := clBtnFace;
FillRect(GlyphRect);
end;
Brush.Color := OldBrushColor;
Inc(GlyphRect.Left);
Inc(GlyphRect.Top);
end;



if Checked or Selected and DrawGlyph then
if not WinXP then
DrawEdge(Handle, GlyphRect, EdgeStyle[Checked], BF_RECT);


И почему же это он в XP это делать?


 
Вован   (2003-09-09 20:05) [15]

не хочет?


 
Вован   (2003-09-09 20:10) [16]

Помогло исправить ситуацию обьяснение VCL-у что он работает не на XP:
Win32MinorVersion:=0;

Хотя неизветсно к чему это еще приведет. Но зато картнки вдавленные.


 
Вован   (2003-09-10 00:29) [17]

Может кто нибудь знает правду как в XP+D7 такое сделать нормальным путем?



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

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

Наверх





Память: 0.48 MB
Время: 0.011 c
7-71964
AndrewVolkov
2003-07-09 21:45
2003.09.22
Как работать с COM Portom


1-71666
Николай
2003-09-08 17:13
2003.09.22
Как откомпилировать


1-71609
qwerty2
2003-09-09 15:26
2003.09.22
Настройка безопасности DCOM


3-71511
DelphiNew
2003-09-02 09:50
2003.09.22
Sql запрос


14-71938
Johnny Smith
2003-08-29 11:12
2003.09.22
Стимул.





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