Форум: "KOL";
Текущий архив: 2007.09.02;
Скачать: [xml.tar.bz2];
ВнизTVBeginEdit и TVEndEdit Найти похожие ветки
← →
MTsv DN © (2007-01-15 11:00) [0]Всем привет...
Для начала:TOnTVEndEdit = function( Sender: PControl; Item: THandle; const NewTxt: String )
: Boolean of object;
{* Event type for TOnTVEndEdit event. }
...
function WndProcTreeView( Self_: PControl; var Msg: TMsg; var Rslt: Integer ): Boolean;
var NM: PNMTreeView;
DI: PTVDispInfo;
P: TPoint;
S: String;
Здесь в двух местах надо заменить String на KOL_String.
И еще вопрос:
Как программно изменить текст который появляется для редактирования в двух функциях TVBeginEdit и TVEndEdit? Т.е. я попадаю в функцию TVBeginEdit и прежде чем отобразить текст для редактирования мне надо удалить из него первый символ... А когда после редактирования жму Enter, добавить первый символ...
Через TVItemText[TVSelected][1] не работает...уже пробывал :"(
← →
Unknown Mystic © (2007-01-15 11:31) [1]Я что-то не понял? У этих функций же параметр Item: THandle...
← →
MTsv DN © (2007-01-15 11:48) [2]> Item: THandle
Только в объявлении, см Выше.
А когда в MCK свойство добавляешь, получается:function TForm1.TV_TVBeginEdit(Sender: PControl;
Item: Cardinal): Boolean;
Вопрос-то не в этом...
← →
MTsv DN © (2007-01-15 11:55) [3]По большому счету, я уже решил проблему, в крайнем случае для OnTVEndEdit. Но вариант, кажется полный изврат. В OnMessage формы вставил:
var
NM: PNMTreeView;
DI: PTVDispInfo;
S: KOLString;
...
if Msg.message = WM_NOTIFY then
begin
NM := Pointer( Msg.lParam );
if NM.hdr.code = TVN_ENDLABELEDIT then
begin
DI := Pointer( NM );
S := DI.item.pszText;
if S[1] <> "\" then
DI.item.pszText := PKOLChar("\" + S);
end;
end;
А вот с OnTVBeginEdit так же не "прокатило"...
← →
Sapersky (2007-01-15 14:33) [4]Для ListView делал так:
If (Msg = LVN_BEGINLABELEDIT) then begin
EditHandle := SendMessage(FList.Handle, LVM_GETEDITCONTROL, 0, 0);
SendMessage(EditHandle, WM_SETTEXT, 0, Integer(PChar(FFiles[Idx].Name)) end;
Для LVN_ENDLABELEDIT - брал строку из NewText (DI.item.pszText), модифицировал и писал в FList.LVItems[Idx, 0].
← →
MTsv DN © (2007-01-15 14:53) [5]Сенкс... Ща попробую...
← →
MTsv DN © (2007-01-15 15:01) [6]2 Sapersky
Огромный респект... Все работает...
Страницы: 1 вся ветка
Форум: "KOL";
Текущий архив: 2007.09.02;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.039 c