Arsip: Akses Component TEdit, TMemo, dll dr aplikasi lain......

 
user image
more 16 years ago

mas_kofa

aku punya prog lama (yang masih saya jalankan ampe skrg) dr delphi juga...and source dah ilang and nama2 komponen yang ada apa aplikasi juga dah lupa....... kalo u/ mbangun ulang prog tsb kelamaan...... masalah nya adlh..... aku ingin membuat prog yang memanfaatkan isi property dr komponen prog diatas....seperti TEdit, Memo, dll ..... gmn cara mengambil nilai atau memberi nilai pada komponent tersebut ???? S'moga pertanyaan tdk membingungkan............
user image
more 16 years ago

danieljun

mas_kofa bukannya udah jago hal2 ginian ? biasa kan pakai FindWindow / FindwindowEx ... nambah ribet . gampangan bikin ulang kali ?
user image
more 16 years ago

mas_kofa

ntar aku coba dulu ya.......pikiranku lagi overload nich.....
user image
more 16 years ago

mat_koder

Klo untuk baca property dari TEDIT/TMEMO sebagai sebuah objek Delphi (baca semua published property) saya rasa ngga bisa dari luar aplikasi tsb. Namun untuk membaca isi TEdit/TMemo sebagai sebuah "native Win32 control" bisa dilakukan. (Tedit/Tmemo adalah "wrapper control" dari Win32 control bukan? -> artinya Delhi ngga nge-paint langsung teks ke Canvasnya si control tsb). contoh untuk baca isi TEdit/TMemo:

var
         hWindow : THandle;
         hChild  : THandle;
         buffer      : array of Char;
         sClassName : String;
begin
         Result := '';
         // cari form induk   
         hWindow := FindWindow(......));
         if hWindow = 0 then begin
            ShowMessage('Form induk yg berisi TEdit ngga ditemukan');
            exit;
         end;
        // periksa semua child control dari form induk apa ada yg berupa edit control ( TEdit/TMemo)
         hChild := GetWindow(hWindow, GW_CHILD);
         while hChild <> 0 do Begin
               if GetClassName(hChild, buffer, SizeOf(buffer)) > 0 then 
               begin
                  sClassName := StrPas(buffer);
                  if sClassName = 'Edit' then 
                  begin
                     SendMessage(hChild,WM_GETTEXT,SizeOf(buffer),Integer(@buffer));
                     Result := StrPas(buffer);
                  end;
               end;
               hChild := GetWindow(hChild, GW_HWNDNEXT);
         end;
end; 
untuk RichEdit based , gunakan EM_GETLINE message dulu saya pernah gunain kode spt diatas, ada segelintir program laen yg ngga bisa dibaca isinya. Mayoritas bisa - saya ngga tau mengapa.
more ...
  • Pages:
  • 1
Share to

Random Topic

Local Business Directory, Search Engine Submission & SEO Tools FreeWebSubmission.com SonicRun.com