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

Вниз

Еще вопросик про кнопочки... :)))   Найти похожие ветки 

 
killer   (2003-06-03 18:36) [0]

Как создать кнопку в загаловке программы? Чтобы она в XP была тоже синенькой, а в 98-ом как в 98-ом?


 
killer   (2003-06-03 21:46) [1]

ПОМОГИТЕ ПЛИЗ!!!!!!!!


 
jonni   (2003-06-04 03:24) [2]

a gde eto zagolovok to est"??


 
Suntechnic   (2003-06-04 06:42) [3]

Как ты её рисуешь, так она и отображается. Рисуй стандартными средствами, тогда всё "синеньким" будет там где надо.

P.S. Какой вопрос- такой ответ. Ты быть хоть ради приличия написал каким образом ты её отображаешь.


 
killer   (2003-06-04 13:02) [4]

В том то и дело... Я не знаю как это сделать... Знаю что через API функции как-то.


 
clickmaker   (2003-06-04 13:31) [5]

Рисует еще одну кнопку закрытия на заголовке

type
TForm1 = class(TForm)
private
{ Private declarations }
procedure WMNCPaint(var Message: TMessage); message WM_NCPAINT;
public
{ Public declarations }
end;

...

procedure TForm1.WMNCPaint(var Message: TMessage);
var
DC: HDC;
R: TRect;
begin
Message.Result := DefWindowProc(Handle, Message.Msg, Message.WParam, Message.LParam);
DC := GetWindowDC(Handle);

GetWindowRect(Handle, R);
R.Top := 6;
R.Left := Width - 80;
R.Bottom := R.Top + 14;
R.Right := R.Left + 15;
DrawFrameControl(DC, R, DFC_CAPTION, DFCS_CAPTIONCLOSE);

ReleaseDC(Handle, DC);
Message.Result := 0;
end;


 
killer   (2003-06-04 13:38) [6]

а она будет в Windows98 как обычные ее кнопки и в XP тоже самое? а то когда в XP все кнопки такие, и вдруг какая-то тут из 98-го, как то не очень смотрица. Вот например GetRight5 там так и сделано... как я хотел бы сделать.


 
killer   (2003-06-04 21:22) [7]

КТО-НИБУДЬ!!!!


 
Николай Быков   (2003-06-04 22:00) [8]

1) Вам же ответили
2) Задавайте вопрос точнее
(что это за синенькие кнопочки в ХР в заголовке программы? У меня уже год ХР стоит и я ни разу их не замечал)


 
Yanis   (2003-06-04 22:39) [9]

>что это за синенькие кнопочки в ХР в заголовке программы? У меня уже год ХР стоит и я ни разу их не замечал

Прикольно.


 
killer   (2003-06-05 00:08) [10]

Ну в 98-ом кнопки просто квадратики такие с "_", "Квадратом" и "Х", а в XP они же закругленные такие и синенькие такие, а "Х" красненькая :))) Можно поменять конечно на другой цвет, но мне этот нравится :)))


 
Yanis   (2003-06-05 08:22) [11]

Блин, неужели трудно догадться. Снимаешь 3 скриншота кнопки, например X, затем в фотошопе стираешь и рисуешь на ней всё что хочешь, тоже в трёх состояниях. На форме лежит 3 Image, в каждую загружаешь по одному сстоянию кнопки: активное(когда мышь над ней), пасивное, нажатое.
Потом делаешь вот так:

{вот это в какой-нибудь обработчик}
var wDc:HDC;
begin
WDc := GetWindowDc(handle);
MyImage.PaintTo(WDc,5,7);

Потом отлавливаешь координаты мыши, типа:

var
R: TRect;{Это в конце концов будет прямоугольник твоей кнопки}
Cx,Cy: Integer;
XFrame, Yframe: Integer;
begin
WDc := GetWindowDc(handle);
Cx := GetSystemMetrics(SM_CXSize);
Cy := GetSystemMetrics(SM_CYSize);
xFrame := GetSystemMetrics(SM_CXFrame);
yFrame := GetSystemMetrics(SM_CYFrame);
R := Bounds(Width - xFrame - 4*Cx + 2, yFrame + 2, Cx - 2, Cy - 4);

После доработки код идеальным будет.
И все обработчики обрабатываешь отдельно.



p.s. Лишь бы руки были.


 
abcd   (2003-06-08 17:28) [12]

XP поддерживает Visual Styles, поэтому при смене стиля кнопка будет отображаться некрасиво.



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

Форум: "WinAPI";
Текущий архив: 2003.08.07;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.009 c
1-20537
Goga
2003-07-26 17:09
2003.08.07
Ошибка Abstract Error


14-20717
VEG
2003-07-20 02:30
2003.08.07
Кто-нибудь знает, как установить TimeOut


14-20677
DeScriptor
2003-07-21 03:41
2003.08.07
Изобилие ресурсов в откомпилированном exe шнике


14-20804
VladmirES
2003-07-22 13:28
2003.08.07
Проаграммирование COM в Delphi.


14-20673
Ihor Osov'yak
2003-07-18 23:43
2003.08.07
MSSQL 2000 beta





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