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

Вниз

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

 
vov1   (2001-11-24 10:59) [0]

как в WinApi создавать ToolBar


 
absent   (2001-11-24 16:59) [1]

Можно так:
hToolBar:= CreateWindowEx(0, TOOLBARCLASSNAME, nil,
WS_CHILD or
WS_VISIBLE or
TBSTYLE_TOOLTIPS or
CCS_ADJUSTABLE or
TBSTYLE_FLAT or
CCS_TOP,
0, 0, 0, 0,
hMainWnd,
0, hInstance, nil);
Расположится в самом верху формы. Как добавить на него кнопки и т.д. - написано в win32.hlp (с примерами)


 
vov1   (2001-11-25 20:12) [2]

спасибо, а по поводу кнопок, примерчик можешь скинуть?
А то что-то не получается...


 
absent   (2001-11-26 08:17) [3]

ей богу, проще хелп почитать...
кусок из моей программы:

const
id_Cut = 1;
id_Copy = 2;
id_Paste = 3;
id_Undo = 4;
id_Redo = 5;
id_Delete = 6;
id_New = 7;
id_Open = 8;
id_Save = 9;
id_View = 10;
id_Char = 11;
id_Find = 13;
id_Replace = 14;
id_Print = 15;

id_Play = 16;
id_PlayBuf = 17;
id_Stop = 18;
id_Win = 19;
id_Dos = 20;
id_Koi = 21;
id_Options = 22;
id_Background = 23;
id_Help = 24;
id_About = 25;
id_FindNext = 26;
id_SaveAs = 27;
id_ShowWindow = 28;
id_WordWrap = 29;
id_Exit = 30;
id_Justify = 31;
id_Center = 32;
id_Left = 33;
id_Right = 34;
id_Record = 35;

DefaultBar: packed array[1..26] of byte=(
id_New, id_Open, id_Save, id_SaveAs, 0,
id_Cut, id_Copy, id_Paste, 0,
id_Undo, id_Redo, 0,
id_Find, id_FindNext, id_Replace, 0,
id_Win, id_Dos, id_Koi, 0,
id_WordWrap, 0,
id_Play, id_PlayBuf, id_Stop, id_Record);

function CreateToolBar: boolean;
var
TBA: TTBADDBITMAP;
TBB: TTBButton;
i: integer;
begin
result:= false;
hToolBar:= CreateWindowEx(0, TOOLBARCLASSNAME, nil,
WS_CHILD or
WS_VISIBLE or
TBSTYLE_TOOLTIPS or
CCS_ADJUSTABLE or
TBSTYLE_FLAT or
CCS_TOP,
0, 0, 0, 0,
hMainWnd,
0, hInstance, nil);
if hToolBar <> 0 then
begin
result:= true;
hOldToolProc:= SetWindowLong(hToolBar, gwl_wndproc, Integer(@hToolProc));
SendMessage(hToolBar, TB_BUTTONSTRUCTSIZE, sizeof(TTBBUTTON), 0);
// берем стандартные картинки + картинки из ресурса (1)
TBA.hInst:= THandle(-1);
TBA.nID:= ord(false);
SendMessage(hToolBar, TB_ADDBITMAP, 15, longint(@TBA));
hToolBmp:= LoadImage(hInst, PChar(1), IMAGE_BITMAP, 0, 0,
LR_LOADMAP3DCOLORS or
LR_LOADTRANSPARENT or
LR_DEFAULTSIZE);
TBA.hInst:= 0;
TBA.nID:= hToolBmp;
SendMessage(hToolBar, TB_ADDBITMAP, 15, longint(@TBA));
if SendMessage(hToolBar, TB_BUTTONCOUNT, 0, 0) = 0 then
begin
TBB.fsState:= TBSTATE_ENABLED;
TBB.dwData:= 0;
TBB.bReserved[1]:= 0;
TBB.bReserved[2]:= 0;
TBB.iString:= 0;
for i:=1 to length(DefaultBar) do
begin
if DefaultBar[i] <> 0 then
begin
tbb.idCommand:= DefaultBar[i];
tbb.iBitmap:= tbb.idCommand - 1;
tbb.fsStyle:= TBSTYLE_BUTTON
end
else
begin
tbb.idCommand:= 0;
tbb.iBitmap:= 0;
tbb.fsStyle:= TBSTYLE_SEP;
end;
SendMessage(hToolBar, tb_addbuttons, 1, lParam(@TBB));
end;
end;
end;
end;

если что-то тут поймешь - буду рад :)



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

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

Наверх




Память: 0.46 MB
Время: 0.006 c
3-90225
DiggerAbstract
2001-12-24 11:28
2002.01.28
Кэширование изменений


3-90230
Mr.Sane
2001-12-25 10:45
2002.01.28
SQL


14-90378
limon
2001-12-05 19:16
2002.01.28
> Merlin. Глюк при записи ответа


1-90246
Dim2511
2002-01-09 12:52
2002.01.28
Как пронумеровать строки DBGrid


4-90418
Ghost666
2001-11-24 04:00
2002.01.28
EXENAME





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