Archive for the ‘vraag-me-af’ Category

Source archive uitpakken, compileren en draaien

Ik zoek een manier om gemakkelijk een programma in aanpassing bij de gebruiker te installeren.
Programmeur:

Maak source archive in de Gambas IDE
Upload ergens

Gebruiker:

Download bv met wget locatie/archivenaam van ergens het “source archive”.
Zet het bestand in de gambas werkdirectory, bv in ~/gambasprj
Pak uit bv in terminal met tar -xzvf archivenaam; je krijg een projectdirectory met projectnaam
Compileer in […]

Hoe een shell commando uitvoeren

EXEC start een extern process. SHELL start een extern command in een shell.
Bij EXEC geef je de parameters allemaal als parameter mee. Bij SHELL geef je een string met het hele commando mee.
EXEC [ "ls", "-la", "/tmp"] WAIT SHELL "ls -la /tmp" WAIT
EXEC wordt uitgevoerd in ? SHELL wordt uitgevoerd in /home/username
Gebruik bv
Application.path & "/this.txt"
voor een bestand dat in het Gambas programma-pakket zit (directory)
Test bv met
DIM sReturnValue AS String
SHELL "pwd" TO sReturnValue
DEBUG sReturnValue

Listbox: bovenste item selecteren?

Ik probeerde het bovenste element van de listbox te selecteren bij het openen van het scherm en het vullen van de lijst, met:
lsbxInvoice.Current.Selected = .. maar dat werkte niet zo …
Een listbox is een lijst met n elementen; bv 15 elementen.
De elementen worden genummerd en kunnen aangesproken worden met een index.
Het eerste element in de […]

Volgorde tabs wijzigen in tabstrip?

TabStrip
Veronderstel dat je een tabstrip in elkaar stak zoals op de afbeelding. Maar nu is er een probleem; je wil dat gebruikers terechtkomen in de “algemene” tabstrip General. Helaas staat die achteraan, en de eerste wordt geopend.

Een eigen Gambas-2 programma starten

Binnen de programmeeromgeving:
project openen en dan een van de volgende:
- Menu Debug, Run
- F5
- run-knop met als symbool een pijl |>
Vanop de Command prompt:
Een gambas project bestaat uit een map of directory met een aantal bestanden.
Eén ervan is uitvoerbaar (executable zichtbaar als eigenschap x in directory listing met ls -lF) en heeft […]

Waarom niet vertaald?

Hoewel heel het project vertaald is en volledig in het NL draait, is een deelvenster FEdit plots helemaal in het Engels. Het verschil met de andere Forms is dat de teksten op het scherm geschreven worden vanuit code :
txtlb.text=”Titel op scherm”
Wordt deze teksttoewijzing in code niet mee aangeboden bij het vertalen?
Upd 26/6: Om teksten […]

Vertaling: gnu translation tools=?

Project, Translate geeft deze fout:

Vertaling, fout

Over welke packages gaat het hier concreet?
Een zoek naar “gnu translation tools” levert geen resultaat in Yast.

Upd:
Raadpleging op web : het gaat waarschijnlijk over de gettext tools; ik selecteer in Yast2 dus

gettext-tools - Tools for Native Language Support (NLS)

Ok! (zie ook hier)

Databank aanspreken, MySQL query met Exec

Ik las onlangs een commentaar van Benoit Minisini waarin hij (vertaald) zegt:

Doe nooit:

sql = “INSERT INTO klant (naam) VALUES (’” & TextBox1.Text & “‘)”
res = mDatabase.conn.Exec(sql)

maar doe:

res = mDatabase.conn.Exec(”INSERT INTO klant (naam) VALUES (&1)”, TextBox1.Text)

Voorbeeld met een nieuw project, graphical application met: DB access.
Table test bevat velden:

naam: varchar30
opm: varchar20
tijd: timestamp

‘ Gambas class file
PRIVATE sMaxRecs AS […]

Object eigenschappen “leegmaken”

Het leegmaken* van de eigenschappen van een object vanuit de classe kan met verwijzing
(* ik bedoel hiermee het op 0 zetten voor getallen en het “” zetten van een string)
naar zichzelf met “ME”:

‘ Class voorbeeld
PUBLIC LongName AS String
PUBLIC Amount AS Float

PUBLIC Empty
  WITH ME
  .LongName = “”
  .Amount […]

Kopiëren van een object

Kan je met twee objecten:
huidigObject
vorigObject
iets doen als:
vorigObject = huidigObject
Ja, dat gaat inderdaad. Is het ook ok? Wat gebeurt met het vorigObject? Worden alleen de waarden intern overgenomen? Of wijst vorigObject nu naar huidigObject?