Jump to content
  • 0

stukje tekst toevoegen op de cursor positie


Ivan Vaes

Question

Posted

wat een banale aanpassing leek, begint me nu danig te irriteren...

ik heb een applicatie waarin er in een groot tekstveld kleine, voor gedefiniëerde, stukjes tekst moeten toegevoegd worden. simpelweg klikken op een tekst aan de linkerkant, en die wordt dan toegevoegd aan het grote tekst blok aan de rechterkant. die stukjes tekst moesten steeds onderaan de tekst bijgeplaatst worden. geen probleem tot daar. maar nu moeten die stukjes tekst geplaatst worden op de cursorpositie in het grote tekstblok.

dit werkt perfect met de functie insert calculated result, maar ... enkel wanneer het knop betreft, en niet wanneer het in een script zit. Blijkbaar wordt er bij het triggeren van een script eerst automatisch een commit gedaan, en weg cursor positie dus...

ik dacht, niet erg ik vang eerst de cursor positie op in een variabele, en voeg daarna de tekst middels de left en middle function toe op de juiste plaats, maar ook dat werkt niet. en ondertussen ben ik er al anderhalf uur aan bezig. Als er iemand raad weet, laat maar komen,

alvast bedankt,

Ivan

8 answers to this question

Recommended Posts

  • 0
Posted

Dag Ivan,

 

Het is niet zo dat het triggeren van een script automatisch een commit veroorzaakt. Er moet wat anders loos zijn. Kan je je scriptje even posten? Als geruststelling: ik heb een applicatie waarin ik exact de techniek gebruik die jij beschrijft zonder problemen. In mijn geval sturen de verschillende knoppen telkens hetzelfde script aan met een andere parameter. In bijlage een voorbeeld.

5a758dc9ccbfb_Picture1.png.3947ecb1f64c47f5cda4ba6c9a9fa120.png

5a758dc9cee4b_Picture2.png.58bd798118c12ebcb90c32680023be87.png

  • 0
Posted

Update: het zou kunnen mislopen als je tekstfragmentjes in een portal staan. Ik herinner me dat ik op die piste ben doodgelopen. De knoppen die je in mijn voorbeeld ziet, zijn dummies en via calc fields (GetNthRecord) haal ik de gerelateerde items op. Ik maak dus een portal na.

 

HTH

Joris

  • 0
Posted

Je hebt toch niet bij de scriptstap "insert Calculated Result" het target field meegegeven? Anders plakt ie de tekst ook altijd weer onderaan.

 

Als je het target field dus niet meegeeft moet je er wel op letten dat de cursor in het goede veld staat natuurlijk want in principe zou je script dan te tekst in ieder willekeurig veld waar de cursor staat de tekst plakken. Je zou dat af kunnen vangen door eerst te controleren of het goede veld actief is. (bijv. get(ActiveFieldName) = Veldnaam).

 

Ik heb het niet met portalen geprobeerd maar verders werkt het prima hier.

 

Groet, Niels

  • 0
Posted

het probleem is inderdaad de portaal. Een knop die gewoon op de layout staat zorgt ervoor dat de cursor op zijn positie blijft staan. Een knop in een portaal echter zorgt niet voor een commit (bevestigen van data), maar zorgt er wel voor dat het veld niet langer geselecteerd is (en dat je dus je cursorpositie kwijt geraakt). Dit is iig waar ik gisteren ben tegenaan gelopen. alles werkt, tot je de knop in het portaal zet...

 

Ik denk dat je een andere denkpiste zal moeten inslaan, bijvoorbeeld eerst dmv waardelijst selecteren wat je wil invoegen, dan klikken waar je het wil invoegen en dan met knop invoegen. Maar ik noem dit zelf een alles behalve sexy oplossing...

 

Ik ben benieuwd naar andere oplossingen.

  • 0
Posted
Ik ben benieuwd naar andere oplossingen.

 

Misschien was mijn uitleg nogal cryptisch.

Probleem: we willen tekstfragmenten uit gelinkte tabel tonen maar via knoppen in portaal werkt het niet.

Oplossing: via knoppen rechtstreeks op de layout werkt het wel.

 

Werkwijze: bepaal het maximum aantal tekstfragmenten voor een bepaalde categorie, bv. 20.

Maak evenzo veel calc fields (zcBtn1...zcBtn20) (of één repeating field) en gebruik GetNthRecord ( 1 ... 20 ) om het betreffende gelinkte record op te halen.

Zet 20 buttons op de layout en gebruik als tekstlabel en als scriptparameter een (merge) field dat verwijst naar zcBtn 1...20.

 

Gevolg: het werkt net alsof de knoppen in een portal staan maar dat is niet het geval. Daarom is er geen probleem meer met de cursor. Je zet de cursor in de tekst en je klikt op de knop met het gewenste tekstfragment. Het tekstfragment staat meteen op de juiste plaats. Behoorlijk sexy toch? 8)

 

 

NB

1) Nadeel: als niet alle 20 knoppen nodig zijn, dan zie je lege knoppen op je layout (zoals op de screenshot). Maar tegenwoordig kunnen we daar met conditional formatting ook wat aan doen.

2) Het werkt niet als je eerst een waardelijst moet openklikken want dan verlies je de cursorpositie.

  • 0
Posted

Denkrichting: Is het wellicht een optie om eerst een teken of tekenset te plaatsen in het tekstveld en deze tekenset in de vervolgstap (lees buttonkeuze of anders) te vervangen door de gewenste tekst?

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...