Форум: "Потрепаться";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];
ВнизРабочий сто виндоус Найти похожие ветки
← →
ANDREY'S (2004-04-29 23:14) [0]Уважаемые мастера есть задача эмулировать рабочий стол виндовс
с чего начать, и как это можно лучше сделать
заранее спасибо буду очень признателен
← →
Игорь Шевченко © (2004-04-29 23:17) [1]С компонента TListView с ViewStyle = vsIcon
← →
YurikGl © (2004-04-29 23:17) [2]Делаешь формочку, на которой расположено n Image, по OnClick на которые выполняется соответствующий ShellExecute. Потом делаешь так, что-бы эти Image-и тащились :)
И курсовая/лабораторная готова.
← →
ANDREY'S (2004-04-29 23:31) [3]если image то как сделать чтобы они при создании упорядочивалисть
а listview ведь бакгроунд не поставишь..
← →
ANDREY'S (2004-04-29 23:50) [4]Люди выручайте срочно нужно
← →
default © (2004-04-29 23:59) [5]посмотри SDK
ф-ции начинающиеся на "SH", щас увидел там предоставление интерфейса IShellLink...
P.S. наконец сделай поиск через какой-либо поисковик
"A shell link is a data object that contains information used to access another object in the shell"s namespace ѕ that is, any object visible through Microsoft® Windows® Explorer. The objects that can be accessed through shell links include files, folders, disk drives, and printers. A shell link allows the user or an application to access an object from anywhere in the namespace; the user or application does not need to know the current name and location of the object. "
← →
Игорь Шевченко © (2004-04-29 23:59) [6]
> Люди выручайте срочно нужно
У всех жена ушла (с)
С какой радости тебя надо выручать ?
← →
ANDREY'S (2004-04-30 00:02) [7]Искал не нашел а надо по зарез
просто по человечески помочь же можно...
← →
default © (2004-04-30 00:03) [8]"Shell Extensions Interfaces
IContextMenu
IContextMenu2
ICopyHook
IExtractIcon
IShellPropSheetExt
IShellExtInit"
короче см SDK
← →
Sanek_metaller © (2004-04-30 00:03) [9]В смысле Эмулирорать,издеваться что ли?
← →
Игорь Шевченко © (2004-04-30 00:14) [10]
> Искал не нашел а надо по зарез
Где искал, что пробовал, что именно не получилось и зачем надо позарез ?
> просто по человечески помочь же можно...
Можно указать направление, а помогать будешь себе сам.
Одно из направлений тебе указано в [1]
← →
ANDREY'S (2004-04-30 00:17) [11]ладно а как в listview фоновый рисунок поставить
качественно как на рабочем столе
← →
ANDREY'S (2004-04-30 00:21) [12]ладно а как в listview фоновый рисунок поставить
качественно как на рабочем столе
ну помогите же пожайлуста времени в обрез!!!!!!
← →
default © (2004-04-30 00:26) [13]возможно это бред, но может пути(Paths) помогут...
← →
Игорь Шевченко © (2004-04-30 00:29) [14]
> ладно а как в listview фоновый рисунок поставить
Написать наследника, обрабатывать в нем сообщение WM_ERASEBKGND, загружать при этом картинку
> ну помогите же пожайлуста времени в обрез!!!!!!
А чего так поздно пришел ? И почему такая спешка ?
← →
DVM © (2004-04-30 00:29) [15]
> ладно а как в listview фоновый рисунок поставить
> качественно как на рабочем столе
> ну помогите же пожайлуста времени в обрез!!!!!!
WM_ERASEBACKGND или ListView_SetBkImage()
Еще в качестве наводки PaintDesktop()
← →
Gero © (2004-04-30 00:29) [16]
> ну помогите же пожайлуста времени в обрез!!!!!!
А о чем раньше думал?
← →
ANDREY'S (2004-04-30 00:34) [17]наследника писать долго очень а проще как-нибудь можно?
можно обрабатывать WM_ERASEBACKGND ,без написания наследника?
← →
Gero © (2004-04-30 00:35) [18]
> наследника писать долго очень
~15мин. Это очень долго?
← →
DVM © (2004-04-30 00:37) [19]
> ANDREY"S (30.04.04 00:34) [17]
Куда торопишься?
← →
ANDREY'S (2004-04-30 00:40) [20]>> вам 15 мин
а мне разбиратся только пол дня
я в написании компонентов чайник
а надо завтра к утру а время уже 2 часа ночи
← →
ANDREY'S (2004-04-30 00:41) [21]может поможете буду очень признателен
← →
Игорь Шевченко © (2004-04-30 00:47) [22]
> а надо завтра к утру а время уже 2 часа ночи
Раньше надо было думать. А писать за тебя, извини, лень. На часы посмотри.
К тому же ты так и не сказал, зачем это надо.
← →
ANDREY'S (2004-04-30 00:47) [23]выручите плииз просто по зарез надо
← →
DVM © (2004-04-30 00:51) [24]
> ANDREY"S (30.04.04 00:47)
У меня есть десктоп. Почти копия эксплореровского. Но не дам я его за бесплатно. Я его ГОД(!) писал, а тебе к утру надо. Обратился бы раньше, я бы помог советом. А сейчас, увы, спать иду.
← →
ANDREY'S (2004-04-30 00:54) [25]да мне не сам десктоп а хотябы компонент
и сколько за него хочешь?
← →
DVM © (2004-04-30 00:56) [26]
> да мне не сам десктоп а хотябы компонент
Он на WinApi, компоненты не используются.
← →
ANDREY'S (2004-04-30 00:58) [27]и скока хочешь?
← →
Knight © (2004-04-30 01:01) [28]Открывешь несколько окон, делаешь Alt-PrintScreen и ставишь в качестве обоев... :)
← →
DVM © (2004-04-30 01:05) [29]
> и скока хочешь?
50 wmz
А вообще вот нашел у себя какой то кусок кода - чем не десктоп, если чуть подправить.
program listview;
uses
windows,
messages,
commctrl;
var
wc : TWndClassEx;
MainWnd,lv,himlLarge : HWND;
Mesg : TMsg;
oldLV : Pointer;
lvi : TLVItemA;
xPos,yPos,nWidth,nHeight : Integer;
function LVProc(wnd:HWND; Msg : Integer; Wparam:Wparam; Lparam:Lparam):Lresult; stdcall;
var dc:THandle;
ps:TPaintStruct;
rect:Trect;
Begin
case msg of
WM_ERASEBKGND:
begin
PaintDesktop(wParam);
Result:=1;
end;
else
Result:=CallWindowProc(oldLV,wnd,msg,wParam,lParam);
end;
end;
function WindowProc(wnd:HWND; Msg : Integer; Wparam:Wparam; Lparam:Lparam):Lresult; stdcall;
var dc:THandle;
ps:TPaintStruct;
rect:Trect;
Begin
case msg of
WM_ERASEBKGND:
begin
PaintDesktop(wParam);
Result:=1;
end;
wm_destroy :
Begin
Result:=0;
postquitmessage(0);
exit;
End;
else Result:=DefWindowProc(wnd,msg,wparam,lparam);
end;
End;
begin
wc.cbSize:=sizeof(wc);
wc.style:=cs_hredraw or cs_vredraw;
wc.lpfnWndProc:=@WindowProc;
wc.cbClsExtra:=0;
wc.cbWndExtra:=0;
wc.hInstance:=HInstance;
wc.hIcon:=LoadIcon(0,idi_application);
wc.hCursor:=LoadCursor(0,idc_arrow);
wc.hbrBackground:=COLOR_BTNFACE+1;
wc.lpszMenuName:=nil;
wc.lpszClassName:="WndClass1";
RegisterClassEx(wc);
xPos:=0;yPos:=0;
nWidth:=GetSystemMetrics(SM_CXSCREEN);
nHeight:=GetSystemMetrics(SM_CYSCREEN);
MainWnd:=CreateWindowEx(WS_EX_TOOLWINDOW,"WndClass1","Caption",WS_POPUP,xPos,yPos,nWidth,nHeight,0,0,Hinstance,nil);
ShowWindow(MainWnd,CmdShow);
lv:=CreateWindowEx(0,WC_LISTVIEW,"",lvs_singlesel or lvs_icon or ws_child
or ws_visible or ws_border or LVS_SHOWSELALWAYS, 0,0,500,500, MainWnd,
0,Hinstance,nil);
oldLV:=Pointer(SetWindowLong(LV,gwl_wndproc,Integer(@LVProc)));
himlLarge := ImageList_Create(GetSystemMetrics(SM_CXICON), GetSystemMetrics(SM_CYICON), ILC_COLOR32 or ILC_MASK, 1, 1);
ImageList_AddIcon(himlLarge, LoadIcon(0,idi_application));
ListView_SetImageList(LV, himlLarge, LVSIL_NORMAL);
lvi.mask := LVIF_TEXT or LVIF_IMAGE or LVIF_PARAM or LVIF_STATE;
lvi.state := 0;
lvi.iImage := 0;
lvi.pszText := pchar("1");
ListView_InsertItem(LV, lvi);
lvi.pszText := pchar("2");
ListView_InsertItem(LV, lvi);
lvi.pszText := pchar("3");
ListView_InsertItem(LV, lvi);
While GetMessage(Mesg,0,0,0) do
begin
TranslateMessage(Mesg);
DispatchMessage(Mesg);
end;
end.
← →
ANDREY'S (2004-04-30 01:11) [30]а значки?
← →
ANDREY'S (2004-04-30 01:13) [31]мне нужен полноценный эмулятор чтобы значки откывались
← →
ANDREY'S (2004-04-30 01:17) [32]Люди пожайлуста напишите компонент очень большая просьба если бы я сам знал я бы обязательно не поленился и помог другому
ведь не тоже сразу все узнали а написание компонентов это темный лес для меня очень прошу
← →
Cimex (2004-04-30 14:17) [33]http://lleo.aha.ru/na/index.shtml
Страницы: 1 вся ветка
Форум: "Потрепаться";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];
Память: 0.52 MB
Время: 0.039 c