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

Вниз

Рабочий сто виндоус   Найти похожие ветки 

 
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;
Скачать: CL | DM;

Наверх




Память: 0.54 MB
Время: 0.051 c
1-1083966366
kiote
2004-05-08 01:46
2004.05.23
RichEdit - гиперссылки


11-1071758616
SAGE
2003-12-18 17:43
2004.05.23
А где собственно KOL 1.87?


3-1082850562
Михаил
2004-04-25 03:49
2004.05.23
DBGrid


14-1083798415
Германн
2004-05-06 03:06
2004.05.23
О конференции "Потрепаться"


1-1083905152
russko
2004-05-07 08:45
2004.05.23
ДЛя тех, кто пользовался XLReport