Форум: "Основная";
Текущий архив: 2009.11.22;
Скачать: [xml.tar.bz2];
Вниз
Перемещение ярлыков Найти похожие ветки
← →
apic (2008-07-21 14:42) [0]У меня следующая проблема! Мне необходимо программно менять координаты расположения ярлыков на рабочем столе. Причем менять координаты необходимо в зависимости от названия ярлыка, например ярлыку "notepad" необходимо установить координаты х=100, у=200.
← →
oldman © (2008-07-21 14:54) [1]кому менять?
себе?
пользоателю?
У меня, например, ярлыки стоят так, как надо мне.
Поменяешь - убью!
← →
apic (2008-07-21 15:07) [2]Зачем и кому я меняю это мой понт! Прошу от сарказма воздержаться! Не знаете решение проблемы, не надо засарять форум, а за помощь буду благодарен!
← →
Vlad Oshin © (2008-07-21 15:17) [3]uses CommCtrl;
procedure TForm3.Button1Click(Sender: TObject);
var
i,x,y:integer;
function GetDesktopListViewHandle: THandle;
var
S: String;
begin
Result := FindWindow("ProgMan", nil);
Result := GetWindow(Result, GW_CHILD);
Result := GetWindow(Result, GW_CHILD);
SetLength(S, 40);
GetClassName(Result, PChar(S), 39);
if PChar(S) <> "SysListView32" then Result := 0;
end;
begin
i:=2;
x:=150;
y:=150;
ListView_SetItemPosition(GetDesktopListViewHandle,i,x,y);
end;
← →
apic (2008-07-21 15:38) [4]Большое спасибо Vlad Oshin, но у меня уже есть подоюный кусок кода, вся проблема в том, как узнать порядковый номер ярлыка с названием "notepad" или "MS Office", к примеру...
← →
Vlad Oshin © (2008-07-21 16:30) [5]не получилось, делал так
procedure TForm3.Button1Click(Sender: TObject);
var
i,DT,x,y:integer;
aa: TLVFindInfo;
function GetDesktopListViewHandle: THandle;
var S: String;
begin
Result := FindWindow("ProgMan", nil);
Result := GetWindow(Result, GW_CHILD);
Result := GetWindow(Result, GW_CHILD);
SetLength(S, 40);
GetClassName(Result, PChar(S), 39);
if PChar(S) <> "SysListView32" then Result := 0;
end;
begin
x:=150;
y:=150;
DT:=GetDesktopListViewHandle;
// думаю тут надо как-то поиграться, хелп почитать
aa.flags:=LVFI_STRING or LVFI_PARTIAL;
aa.psz:=pchar("txt");
i:=ListView_FindItem(DT,-1,aa);
ListView_SetItemPosition(DT,i,x,y);
end;
← →
Rouse_ © (2008-07-21 16:40) [6]
> ListView_SetItemPosition
А структурку кто в чужое ВАП перемещать будет? :)
Что-то наподобие этого должно быть:
http://delphimaster.net/view/2-1215465648/
← →
oldman © (2008-07-21 16:47) [7]
> apic (21.07.08 14:42)
> например ярлыку "notepad" необходимо установить координаты
> х=100, у=200.
Не забудь проверить, не находится ли по этим координатам другой (очень нужный) ярлык...
← →
apic (2008-07-23 07:23) [8]Всем спасибо, сейчас все попробую!
← →
apic (2008-07-23 07:23) [9]Удалено модератором
← →
apic (2008-10-29 10:20) [10]Все получилось!
← →
Rouse_ © (2008-10-29 14:03) [11]Эмм... ты три месяца что-ли пробовал? :))))
← →
apic (2008-10-30 08:18) [12]Нет через три месяца до инета добрался, так надоже отблагодарить!!!!
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2009.11.22;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.008 c