[VBA] Resizen userform + multiline in label*

Pagina: 1
Acties:
  • 1.010 views sinds 30-01-2008
  • Reageer

  • mbvisiontt
  • Registratie: Mei 2000
  • Laatst online: 19-08-2025
Ik ben voor een vak bezig in Visual Basic, en heb een paar vraagjes waarop ik het antwoord niet kan vinden. :)

Ik heb een database in Excel 2003 gemaakt, en ben nu in Visual Basic userforms aant bouwen zodat een gebruiker de tool kan gebruiken om, in mijn geval, een nieuwe motor uit te zoeken.

Ik zou graag willen dat de tool full screen start, want nu zit ik met het probleem dat de userforms gedesigned op mijn 24" scherm niet passen op een 15" scherm op de uni. Daardoor weet ik ook niet hoe groot ik de tekst in een userform kan maken, want op mijn scherm ziet alles er netjes uit, terwijl het op het 15" scherm allemaal erg eng wordt en overlapt etc.

Tevens wil ik in een bijschrift of tekstvak de "Enter" knop gebruiken waarvoor hij bedoeld is: om een blanke regel in te voegen. Dit doet VB echter niet, de Enter knop heeft geen functie. Nu is mijn lap tekst 1 aan elkaar geschreven zooitje, in plaats van netjes met een paar blanke regels ertussen duidelijk zichtbaar.

Dat was ie, hoop dat iemand me kan helpen. O+

.... Ik weet het ook niet


  • Gonadan
  • Registratie: Februari 2004
  • Laatst online: 09:52

Gonadan

Admin Beeld & Geluid, Harde Waren
Hehe, dan zou ik sowieso eerst je code maar eens gaan structureren en becommentarieren (stom woord).
Daar zullen je docenten ook blij van worden :)

Is het niet slim om absolute waarde te gebruiken voor je userforms?
Zorg dat het mooi past op de 15" als bijna fullscreen en dan heb je op je 24" gewoon een kleiner venster maar staat het nog wel goed :)

Over die 'enter' knop, ik begrijp niet helemaal wat je bedoelt.
Kan je het nog wat beter uitleggen? :)

Misschien is het ook handig om screenshots te plaatsen.
En de code (na structureren) :)
Dan kunnen we je beter helpen.

[ Voor 15% gewijzigd door Gonadan op 04-05-2006 13:10 ]

Look for the signal in your life, not the noise.

Canon R6 | RF 24-70 f/2.8 L | 50 f/1.8 STM | 430EX II
Sigma 85 f/1.4 Art | 100-400 Contemporary
Zeiss Distagon 21 f/2.8


Verwijderd

Alles wat je omschrijft kan je bijna wel doen zonder een regel code in te tikken geloof ik :X voornamelijk wat slepen/knippen/plakken/whatever, kwestie van eens een manual doorlezen of zelfonderzoek uitgaan wat voor mogelijkheden er allemaal zijn :)

  • Spider.007
  • Registratie: December 2000
  • Niet online

Spider.007

* Tetragrammaton

Ik snap niet wat dit topic hier doet; ik verplaats het maar even

WSS > OFF

---
Prozium - The great nepenthe. Opiate of our masses. Glue of our great society. Salve and salvation, it has delivered us from pathos, from sorrow, the deepest chasms of melancholy and hate


  • mbvisiontt
  • Registratie: Mei 2000
  • Laatst online: 19-08-2025
Full screen wil ik graag omdat het dan op elke pc netjes staat, en ik vind dat zowiezo mooier. :) Moet toch een optie voor zijn, nou ja ik weet dat die er is, maar ik krijg hem niet aan de praat (copy paste van een andere tool op internet gevonden maar werkt helaas niet).

Die Enter functie is gewoon dat je een tekstvak hebt, waarin ik bv een introductie schrijf. Nu ziet alles zo uit:


lihfvciqewuhfvqieurvqeourvqoeurvhefuhvqeuvqefvuqefv
evrfpouhqerfvoiqeo[viqe[ovihqefpi[hqerf
;qwoeifvhqopeihrv[eijhv[qeiofjhv
qeproviheoviuqev
wqieofuhq[eohrv[euqorh[wohervq[eiovqe[ivoqe[ovi


Ik wil dus graag dit:


efpuvhpweiurvhqwpeouhqpioeuhpqieuhv
qervuiheqpuivhwepivhqpufvpqeufhv

qepiufvhqepouvhpoqeufhvoquerv

wqpefouhvqeovihq[eiofv[eijhv


Maar die blanke regel kan ik dus niet invoegen omdat de Enter toets niets doet.

Is voor full screen de code niet zoiets?


Private Sub UserForm_Click()

Application.DisplayFullScreen = True

End Sub

.... Ik weet het ook niet


  • Gonadan
  • Registratie: Februari 2004
  • Laatst online: 09:52

Gonadan

Admin Beeld & Geluid, Harde Waren
Doet de enter toets helemaal niets?
Of alleen voor een nieuwe regel?

Anders moet je zelf een soort key event afvangen en een newline aan het tekstvak toevoegen :)

Look for the signal in your life, not the noise.

Canon R6 | RF 24-70 f/2.8 L | 50 f/1.8 STM | 430EX II
Sigma 85 f/1.4 Art | 100-400 Contemporary
Zeiss Distagon 21 f/2.8


Verwijderd

als je de eigenschappen multiline & enterkeybehavior van de textbox op true zet kan je naar de volgende lijn met de enter-toets. maar als ik je zo hoor is dat het minste van je problemen.

  • mbvisiontt
  • Registratie: Mei 2000
  • Laatst online: 19-08-2025
Nou, ik ben een newbie op dit gebied dus tja... Maar de eigenschappen die jij noemt zie ik niet in de property list staan. Dat is trouwens bij meer dingen wel zo, als ik dan op internet lees hoe het zou moeten (iets veranderen in de property list), dan staan niet alle items die ik moet veranderen in de property lijst. Hoe kan dit? :?

.... Ik weet het ook niet


  • mbvisiontt
  • Registratie: Mei 2000
  • Laatst online: 19-08-2025
Ik denk dat je me niet goed begrepen hebt _heretic_. Ik bedoel in een tekstvak in de form zelf, dus voor iets dat ik zelf typ, niet wat een gerbuiker moet gaan typen.

.... Ik weet het ook niet


Verwijderd

vbcrlf?

  • CoRrRan
  • Registratie: Juli 2000
  • Laatst online: 04-03 17:36

CoRrRan

Don't Panic!!!

Als je zelf een UserForm aan het opbouwen bent, en je wilt enters in je textbox creeren, moet je de Property "Multiline" van je TextBox op TRUE zetten. Met SHIFT+ENTER kun je dan naar een nieuwe regel gaan. Ik geloof dat _heretic_ je prima begreep, maar jij hem niet.

-- == Alta Alatis Patent == --


  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

mbvisiontt schreef op vrijdag 05 mei 2006 @ 15:48:
Ik denk dat je me niet goed begrepen hebt _heretic_. Ik bedoel in een tekstvak in de form zelf, dus voor iets dat ik zelf typ, niet wat een gerbuiker moet gaan typen.
Nou, het geval is eerder dat je nogal slordig dingen uitlegt ;)

- het is visual basic for applications, ofwel VBA en dat is echt iets anders dan VB :)
- je hebt het over een tekstvak maar je bedoelt een label. En dat zijn twee verschillende dingen. Een label heeft idd de multiline eigenschap niet. Maw zet je label om in een gelocked tekstvak en het werkt wel. Of je gebruikt ctrl+enter bij het intikken van het label.
- dat is dan ook een antwoord op de vraag waarom je properties niet ziet. Ofwel je hebt iets anders voor je neus, of je kijkt niet goed ;)

offtopic:
Sowieso mis ik in je topics toch wel je eigen inzet. Een titel die niets zegt, geplaatst in een subforum wat niets met het onderwerp van doen heeft en vragen waar je met google en F1 een heel eind in de goede richting komt terwijl ik daar in TS niets van terug zie en als er dan een reactie komt denk je ook niet even verder na. Bovendien is dit een huiswerkvraag. Dat geeft niks, maar zeker bj huiswerk is verwachten we dat je zelf actief naar de oplossing zoekt. Zo is het iig niet de bedoeling. Lees je Algemene gedragsregels (Netiquette) er nog eens op na?

[ Voor 10% gewijzigd door Lustucru op 06-05-2006 11:26 ]

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


Verwijderd

Niesje schreef op vrijdag 05 mei 2006 @ 21:44:
[...]


Nou, het geval is eerder dat je nogal slordig dingen uitlegt ;)

- het is visual basic for applications, ofwel VBA en dat is echt iets anders dan VBA :)
- je hebt het over een tekstvak maar je bedoelt een label. En dat zijn twee verschillende dingen. Een label heeft idd de multiline eigenschap niet. Maw zet je label om in een gelocked tekstvak en het werkt wel.
- dat is dan ook een antwoord op de vraag waarom je properties niet ziet. Ofwel je hebt iets anders voor je neus, of je kijkt niet goed ;)

offtopic:
Sowieso mis ik in je topics toch wel je eigen inzet. Een titel die niets zegt, geplaatst in een subforum wat niets met het onderwerp van doen heeft en vragen waar je met google en F1 een heel eind in de goede richting komt terwijl ik daar in TS niets van terug zie en als er dan een reactie komt denk je ook niet even verder na. Bovendien is dit een huiswerkvraag. Dat geeft niks, maar zeker bj huiswerk is verwachten we dat je zelf actief naar de oplossing zoekt. Zo is het iig niet de bedoeling. Lees je Algemene gedragsregels (Netiquette) er nog eens op na?
ik ken vba verder niet maar in vb kun je bij labels gewoon vbcrlf gebruiken (ik ging er dan ook vanuit dat hij uiteindelijk labels bedoelde).

  • mbvisiontt
  • Registratie: Mei 2000
  • Laatst online: 19-08-2025
Bedankt voor de hulp, ik ga het proberen.

Wellicht dat ik niet heb laten doorschemeren dat ik zelf niet zoek, maar ik doe dit samen met een mede student, en we hebben al tig dagen erin zitten, maar kunnen sommige dingen niet uitgevogeld krijgen (excel hulp, tutorials, google, tutor van uni (die wist het zelfs niet... :S), etc). Dus ik zoek echt wel, ik ben er eentje van de oudere garde dus je mag toch wel verwachten én aannemen dat ik echt wel zelf gezocht heb... :) Verkeerd topic was my bad.. ik keek niet verder dan m'n neus... je weet wel. ;)

.... Ik weet het ook niet


  • mbvisiontt
  • Registratie: Mei 2000
  • Laatst online: 19-08-2025
Dat met de enter is opgelost waarvoor mijn dank. Ik heb nu wat betreft het screensize probleem nog geen idee hoe dit op te lossen.

Ik heb mijn 1e form op een 18" gemaakt, waardoor ik de form groot kan maken en veel plek heb voor de tekst etc. Echter de 2e en 3e zijn op een kleiner scherm gemaakt, waardoor ik de form niet zo groot uit kan trekken en ik de grootte van de letters en plaatjes zou moeten aanpassen.

Is de tip die Gonadan gaf de enige juiste? Dus op een 15" scherm alles passend maken zodat het op een 18" ook past? Ik geloof eigenlijk niet dat dit de ideale oplossing is, althans ik hoop het niet want de ruimere opzet van mijn 1e form ziet er netter uit uiteraard. :)

.... Ik weet het ook niet


  • Gonadan
  • Registratie: Februari 2004
  • Laatst online: 09:52

Gonadan

Admin Beeld & Geluid, Harde Waren
mbvisiontt schreef op zaterdag 06 mei 2006 @ 09:17:
Dat met de enter is opgelost waarvoor mijn dank. Ik heb nu wat betreft het screensize probleem nog geen idee hoe dit op te lossen.

Ik heb mijn 1e form op een 18" gemaakt, waardoor ik de form groot kan maken en veel plek heb voor de tekst etc. Echter de 2e en 3e zijn op een kleiner scherm gemaakt, waardoor ik de form niet zo groot uit kan trekken en ik de grootte van de letters en plaatjes zou moeten aanpassen.

Is de tip die Gonadan gaf de enige juiste? Dus op een 15" scherm alles passend maken zodat het op een 18" ook past? Ik geloof eigenlijk niet dat dit de ideale oplossing is, althans ik hoop het niet want de ruimere opzet van mijn 1e form ziet er netter uit uiteraard. :)
Het is zeker niet de enige oplossing. :)
Maar ik heb mijzelf aangeleerd om applicaties nooit volledig scherm te maken als dat niet absoluut nodig is.
De kans wordt dan groter dat de overzichtelijkheid van je GUI hard achteruit gaat.
Nu heb ik zelf weinig ervaring met VBA, maar in elke andere programmeertaal die ik ken is het mogelijk om het venster volledig scherm te maken en de inhoud daar op uit te lijnen. :)

Wil je nog even posten wat uiteindelijk het probleem was met die 'enters'?
Dan kunnen toekomstige gebruikers wellicht hun antwoord in jouw post vinden :)

Look for the signal in your life, not the noise.

Canon R6 | RF 24-70 f/2.8 L | 50 f/1.8 STM | 430EX II
Sigma 85 f/1.4 Art | 100-400 Contemporary
Zeiss Distagon 21 f/2.8


  • mbvisiontt
  • Registratie: Mei 2000
  • Laatst online: 19-08-2025
Ik heb je tip aangehouden en heb op mijn laptop, 15" met 1400 * 1050, een vaste schermgrootte genomen en daar nu alles op uitgelijnd. Ik denk dat ik nu op de meeste computers safe ben. :) Reden waarom ik graag full screen zou willen, is omdat je nu naast de forms nog de achterliggende vensters ziet, alsmede de taakbalk etc. Dit vind ik persoonlijk niet zo netjes uitzien.

Het probleem met de Enter knop in een label is opgelost door het gebruik van de Shift+Enter combinatie. Als je in een label een blanke regel wilt invoegen, kan dit door middel van Shift+Enter. Alleen de Enter toets indrukken heeft geen resultaat.

.... Ik weet het ook niet


  • BertS
  • Registratie: September 2004
  • Laatst online: 13-02 08:33
mbvisiontt schreef op zaterdag 06 mei 2006 @ 11:45:
15" met 1400 * 1050, een vaste schermgrootte genomen en daar nu alles op uitgelijnd. Ik denk dat ik nu op de meeste computers safe ben.
Houd er rekening mee dat 15" TFT-gebruikers vaak op 1024*768 draaien. bij 17"TFT is het 1280*1024.
Die 17"TFT is wel het minste waar je rekening mee moet houden, maar 1024*768 wordt ook nog heel veel gebruikt (ook op laptops e.d.).
Pagina: 1