Gå til innhold

Visual Basic Roundup!


Anbefalte innlegg

Som vil alle vet er PocketPCer absolutt fantastiske! Spesielt Qtek 9100 med sitt fantastiske tastatur ( ;) ). Men de er litt store når du skal ut på byen. Vel, selvfølgelig har du en ekstra telefon som du kan viderekoble telefonsamtaler til, men hva med SMSer?

 

Med Forwarder får du alle beskjedene som er sendt til deg så fort de havner på din PocketPC. Enjoy! 8)

 

Hjelp meg å debugge!

Last ned her for Pocket PC!

 

 

forwarder.jpg

Endret av moskus
Lenke til kommentar
Videoannonse
Annonse

Virker lovende dette, moskus. Dessverre har jeg ingen PocketPC (eller brukbare emulatorer), så jeg fikk ikke kjørt den siste applikasjonen din.

 

DrinkBuddy var jo en temmelig original idé, og det faktum at applikasjonen støtter PocketPC er så menn en fordel - det er trolig ikke så ofte en har tilgang til datamaskinen når en tar seg noen drinker. Personlig er jeg avholdsmann, skjønt programmet blir ikke mindre interessant av det. Det eneste jeg har å utsette er vel muligens distribusjonsmetoden; med tanke på programmets størrelse, kunne du vel strengt tatt benyttet en alminnelig komprimert fil, eller eventuelt tilbudt dette som et alternativ. Dette er riktignok bare min subjektive mening.

Lenke til kommentar

Forwarder var bare et resultat at jeg 1) er litt redd for min PPC og derfor 2) ikke alltid har lyst til å dra på den. Det er litt upraktisk å måtte ta telefonen når man står i en stige med malerkosten i den ene hånda...

 

 

Takk for tips ang. distribusjon, det var en god ide! Jeg lurte lenge på om jeg skulle gidde å lage installer siden programmet er, som du sier, ganske lite (og kun en fil). Men noen av de eldre potensielle brukerne (programmet er jo nærmest laget som en spøk ;)) jeg kjenner vil neppe være istand til å forstå hvordan det skal åpnes hvis ikke.

 

Men jeg kan jo legge ut to pakker, der en er for "avanserte" brukere. ;)

Endret av moskus
Lenke til kommentar
  • 2 uker senere...

LiveKeeper er et program som overvåker en prosess, og starter den på ny hvis noen avslutter den eller om den henger seg.

 

Programmet er veldig enkelt. Finn banen til programmet med Browse, eller bare lim in path’en i tekstboksen. Sett så hvor ofte LiveKeeper skal sjekke om programmet kjører (du kan sette denne til et sekund, men 3 sekunder er anbefalt som et minimum for store og tunge applikasjoner). Skrur du på ”Show positive logs...” vil programmet legge til en beskjed for hver sjekk, men det kan bli mye å logge over tid. Så er det bare å trykke på start.

 

Prøver du nå å avslutte programmet manuelt (f.eks. Notepad, som er default program), vil det starte opp innen 10 sekunder. Henger programmet seg, skal det også starte på nytt innen 10 sekunder. Du må altså avslutte programmet ved å trykke på Stop-knappen i LiveKeeper.

 

I tillegg kan du åpne og lagre konfigurasjonen din for senere bruk. Disse blir tekstfiler (orket ikke lage noe spesielt format).

 

I noen tilfeller er det hensiktsmessig å starte LiveKeeper med en prosess når maskinen starter. Dette kan gjøres enkelt ved å lage en snarvei i mappen Start -> Programmer -> Oppstart.

 

1) Lag først en vanlig snarvei til programmet. Banen kan da typisk bli:

”c:\Program Files\LiveKeeper\LiveKeeper.exe”

 

2) Legg til path for konfigurasjonsfilen. Banen til snarveien vil da se f.eks. slik ut (legg merke til hvor det er ”-merker og hvor det ikke er):

”c:\Program Files\LiveKeeper\LiveKeeper.exe” c:\Testkonfigurasjon.txt

 

3) I tillegg kan du gjøre slik at LiveKeeper starter automatisk og minimerer seg i Task Bar (blir et lite lyn-ikon). Banen blir da

”c:\Program Files\LiveKeeper\LiveKeeper.exe” c:\Testkonfigurasjon.txt /start

 

Send meg gjerne meldinger om bugs eller andre ønsker. :)

 

livekeeper.jpg

Lenke til kommentar
  • 3 uker senere...
  • 3 uker senere...
  • 2 måneder senere...

Den likte jeg, Jonas. Nå er jeg jo klar over at dette sikkert ble laget kun for å friske litt opp på hukommelsen, men om det har noe å si, tillater jeg meg å komme med noen vink. Først og fremst må jeg si det er det temmelig ypperlig rent kodemessig, især for å forklare eller bygge videre på, skjønt det i den henseende kanskje er litt mangelfult på kommentarer. Dessuten burde noen komponenter òg fått noe annet enn standardnavnene, men det er muligens bare min smak. En behøver jo såklart ikke gi folk det inn med en teskje.

 

Foruten det, ser jeg noen få ekstra manger: litt finpussing på brukervennligheten, samt kanhende en smule bedre grafikk. Med brukervennlighet tenker jeg spesielt på to småting som irriterte meg - feilmeldingen som kommer opp når en kansellerer en åpning, samt at åpningsdialogen ikke automatisk begynner i spillets lokalisasjon, når jo det er her brukeren mest sannsynlig kommer til å navigere til. Det siste kan du oppnå med følgende kodesnutt:

CommonDialog1.InitDir = App.Path

Med en level er det jo kanskje heller ikke så mye av et spill enda, men det kan en sikkert raskt endre på. Et godt tilskudd i eksempelprogrammene her, må jeg si.

 

Hm, synes for øvrig det er bra du kommer med noe nytt akkurat nå, ettersom det har vært svært så dødt i denne tråden i det siste. Jeg burde vel òg komme med noen bidrag.

Endret av aadnk
Lenke til kommentar

Takk for svar!

 

Anngående standardnavn, mener du 'Constant and Variable Naming Conventions'? Har vært litt slapp på det, synes det er mye arbeid til liten nytte. Regner med det gir flere fordeler når det kommer til at andre skal kunne forså koden.

 

Feilmeldingen er bare et resultat av noe debugging, glemte å skrive tilbake etter jeg fjerna litt kode.

 

Skal prøve å lage flere levler og gjøre litt mer spill ut av det.

Lenke til kommentar
  • 4 uker senere...

Mang en gang har jeg blitt nokså frustrert over listebokskontrollen som er tilgjengelig via Microsoft Common Controls-biblioteket. Det største problemet med denne innkapslingen (wrapper) av listebokskontrollen, er at den, i motsetning til kontrollen i .NET, ikke støtter virtuelle elementer. I de tilfeller en har alle elementene i (eksempelvis) en Array, blir det dessuten lettere å bare fortelle listeboksen hvor mange elementer som skal vises, og gradvis gi elementene til kontrollen når de vises, og ikke alle på en gang. Dette betyr at en på ingen måte kan lage en liste over en million elementer uten å forbruke unevnelig med minne i prosessen. Nå er det muligens ikke ofte en har behovd for noe slikt, og for øvrig er en slik visning nokså ikke-intuitivt. Likevel kan selv det å flytte et fåtall med elementer inn i en listeboks være tidkrevende.

 

I lys av dette valgte jeg å skrive min egen virtuell listebokskontroll. Og ikke nok med det, jeg valgte å skrive det hele helt fra bunnen av. Implementasjonen støtter skreddesydde skins, XP-skins direkte og jeg har også gjort det mulig å koble til en SQL-kilde med få linjer kode.

 

ZIP-filen jeg linker til inneholder også et testprosjekt som viser hvordan du kan innlemme kontrollen i et prosjekt.

 

Dere finner kontrollen her.

post-30454-1160146837_thumb.png

Lenke til kommentar
I lys av dette valgte jeg å skrive min egen virtuell listebokskontroll. Og ikke nok med det, jeg valgte å skrive det hele helt fra bunnen av. Implementasjonen støtter skreddesydde skins, XP-skins direkte og jeg har også gjort det mulig å koble til en SQL-kilde med få linjer kode.

 

Betyr dette at en liste i VB (out of the box) ikke støtter PAGE loading? I så fall er jo det du har laget hyper interresant. Tar en kikk på det.

 

Ole

Lenke til kommentar
Betyr dette at en liste i VB (out of the box) ikke støtter PAGE loading?

7074634[/snapback]

Hm. Er litt usikker på hva du mener, men dersom du tenker på virtuelle listebokser, så nei, VB6 støtter det ikke uten eksterne objekter.

 

For øvrig har jeg nå oppdatert kontrollen, blant annet ved å flytte mye av konfigureringen til egenskapsformer (property pages) og gjøre alle klasser og alle egenskaper i stand til å bli lagret, samt legge mer funksjoner. Det skal for øvrig bli nevnt at GUI-programmering er kanskje det aspektet jeg liker minst med programmering generelt, så ikke forvent noen designbombe med tanke på disse egenskapsformene. :p

 

Ellers hadde jeg satt pris på om noen ville komme med noen forslag til forbedringer. Er det et eller annet som mangler?

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...