Avatar billede jakob-s Nybegynder
22. november 2008 - 20:02 Der er 4 kommentarer

Overføre værdier mellem 2 vinduer/programmer.

Bruger et købe program, hvor der er en formular med 20 felter.
Ønsker at lave et program, der kan udregne valuta, og overføre det til et bestem felt i formularen.
Har brugt denne programstump til at teste med, som flytter vædien.

procedure TJakobForm1.JakobButton1Click(Sender: TObject);
var
  pHandle: HWND;
begin
  pHandle := FindWindowEx(FindWindow('TLissiForm1', nil ), 0, 'TEdit', nil);
  SendMessage(pHandle, WM_SETTEXT, 0, integer(JakobEdit1.Text));
end;

Det virker, så fremt der kun er 1 felt i formularen. Er der flere felter i formulare vil dette programstump
overføre værdien til det sidste felt på formularen.
Hvordan overfører jeg en værdi fra mit program, til et bestemt felt i det andet program??
Jeg har et program, der kan aflæse handle og navn i hver af felterne. Alle felterne har det samme navn 'Edit', og
handlen ændre sig jo, hver gang man åbner vinduet.


Hilsen Jakob-s
Avatar billede hrc Mester
25. november 2008 - 15:28 #1
Lidt svært når du beskriver købeprogrammet så "tåget". Er der et ActiveX objekt for købeprogrammet som du kan indlæse?

Hvis du har noget kode der kan læse handle og navn på felterne i købeprogrammet må du bygge det ind i dit program og så erstatte pHandle med det komponenten har. Burde ved nok virke selvom du ikke længere har fat i vinduet men dets komponenter.
Avatar billede jakob-s Nybegynder
25. november 2008 - 23:58 #2
Det købeprogram jeg omtaler, er et database program jeg bruger på arbejde. Der er der et vindue med 20 edit felter, og i et af de felter vil jeg vil jeg overføre en værdi til, fra det andet program.
Det program der kan aflæse div. handler m.m. hedder Windose. Det kan downloades fra dette link www.greatis.com/delphicb/windowse/features.html
Problemmet er at alle felterne hedder Edit, og Handle ændre sig hver du lukker og åbner vinduet. For hvis Handle altid var dem samme kunne jeg sagtens finde feltet.
Avatar billede hrc Mester
26. november 2008 - 09:11 #3
Det var vel ikke handle der skulle være statisk, men navnet - men hvis programmet tilsyneladende indeholder komponenter med samme navn, så ved jeg ikke. Kan det være en fejl i Windose?
Avatar billede jakob-s Nybegynder
05. januar 2009 - 21:17 #4
Der har ikke været meget aktivitet omkring mit spørgsmål. Enten fordi jeg ikke har formuleret mig særlig godt, eller viden om emnet iblandt medlemmerne, ikke har været
ret stor.
Det jeg selv har fundet ud kan ses her
www.swissdelphicenter.ch/torry/showcode.php?id=327 ,
og det løser mit problem.
Så jeg lukker spørgsmålet.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester