Language-changing Control σε VB6

Συζητήσεις για γλώσσες προγραμματισμού και θέματα σχετικά με προγραμματισμό.
Post Reply
User avatar
nap
Kilobyte level
Kilobyte level
Posts: 239
Joined: Tue Nov 23, 2004 5:25 pm
Location: In da ghetto
Contact:

Language-changing Control σε VB6

Post by nap » Tue Nov 15, 2005 11:04 pm

Αναπτύσσω μία δίγλωσση (Αγγλικά - Ελληνικά) εφαρμογή σε VB 6 και για διάφορους λόγους δεν θέλω ο χρήστης να αλλάζει γλώσσα από το Language Bar των Windows ή με Alt-Shift (ή άλλο συνδυασμό πλήκτρων). Θέλω να βάλω ένα control στην εφαρμογή (μενου, κουμπί, οτιδήποτε) που να μου επιτρέπει να αλλάζω την γλώσσα στην οποία θα γράφει ο χρήστης. Είναι αυτό δυαντόν; Υπάρχει κάπου κάτι τέτοιο; Έκανα ένα σχετικό googling αλλά δεν βρήκα κάτι...
It is by will alone I set my mind in motion...
User avatar
mikem4600
Gbyte level
Gbyte level
Posts: 1363
Joined: Fri Mar 12, 2004 2:00 pm
Academic status: Alumnus/a
Gender:
Location: A Galaxy Far, Far Away
Contact:

Post by mikem4600 » Wed Nov 16, 2005 11:25 am

Κατ' αρχάς, κάτι τέτοιο θα παραβιάζει τα Human Interface Guidelines για τα Windows. Αν αγνοήσεις αυτό το γεγονός, νομίζω ότι μπορείς να ορίσεις με κάποια properties του textbox (π.χ.) το range των τακτικών αριθμών που μπορεί να δεχθεί, και να το αλλάζεις δυναμικά έτσι ώστε να δέχετε μόνο αγγλικούς ή μόνο ελληνικούς χαρακτήρες ανάλογα με την περίπτωση (ή κάτι τέτοιο :) ). Ακόμα χειρότερα, μπορείς να φτιάξεις lookup tables έτσι ώστε πιάνοντας το keypress event να "μεταφράζεις" τον κάθε χαρακτήρα που πατάει ο χρήστης σε ό,τι γλώσσα θες. Βέβαια δεν ξέρω αν αυτά γίνεται στη VB6 καθώς έχω να την κοιτάξω κάτι χρόνια...
Autocracy hates questions. Anarchy hates answers.
User avatar
nap
Kilobyte level
Kilobyte level
Posts: 239
Joined: Tue Nov 23, 2004 5:25 pm
Location: In da ghetto
Contact:

Post by nap » Wed Nov 16, 2005 11:47 am

mikem4600 wrote:... Human Interface Guidelines για τα Windows.
:?: :?: :?:

Ευχαριστώ πάντως. Τελικά το βρήκα: υπάρχει η συναρτηση LoadKeyboardLayout που κάνει αυτό που θέλω...
It is by will alone I set my mind in motion...
User avatar
mikem4600
Gbyte level
Gbyte level
Posts: 1363
Joined: Fri Mar 12, 2004 2:00 pm
Academic status: Alumnus/a
Gender:
Location: A Galaxy Far, Far Away
Contact:

Post by mikem4600 » Wed Nov 16, 2005 12:20 pm

nap wrote:
mikem4600 wrote:... Human Interface Guidelines για τα Windows.
:?: :?: :?:
Official Guidelines for User Interface Developers and Designers. Π.χ. στο Design Principles λέει
Consistency within the operating environment. By maintaining a high level of consistency between the interaction and interface conventions provided by Windows, your software benefits from the users' ability to apply interactive skills they have already learned.
Εκτός κι αν είναι προετοιμασμένοι, οι χρήστες μπορεί να... παραξενευτούν που δεν δουλεύει η αλλαγή γλώσσας όπως σε όλες τις άλλες εφαρμογές.
Autocracy hates questions. Anarchy hates answers.
User avatar
nap
Kilobyte level
Kilobyte level
Posts: 239
Joined: Tue Nov 23, 2004 5:25 pm
Location: In da ghetto
Contact:

Post by nap » Wed Nov 16, 2005 12:41 pm

Καταλαβαίνω, αλλά μάλλον θα είναι προετοιμασμένοι...
Να σου εξηγήσω, η εφαρμογή θα χρησιμοποιείται ως εξής:
Θα συνδέεται ο χρήστης μέσω Remote Desktop Connection σε έναν υπολογιστή (με ένα εντελώς unprivileged account) και εκεί θα ξεκινάει αυτόματα η εφαρμογή, δεν θα βλέπει καθόλου taskbar και language bar των windows... Υπάρχει και ένα προβληματάκι με το αν το RDC στέλνει στον remote υπολογιστή key combinations (alt-shift), θα το χρησιμοποιούν και κάτι μπαρμπάδια που δεν έχουν ιδέα από υπολογιστές (και άρα δεν ξέρουν alt-shift), οπότε πρέπει κάπως να αλλάζουν γλώσσα...

Τώρα μη ρωτήσεις γιατί θα πρέπει να γίνει έτσι, γιατί είναι μια πονεμένη ιστορία με πελάτες, project managers και έναν καημένο developer (εμένα :-( ). Ώρες-ώρες αισθάνομαι σαν τον Ζαχαρία Δεντοφτιάχνω...
It is by will alone I set my mind in motion...
User avatar
mikem4600
Gbyte level
Gbyte level
Posts: 1363
Joined: Fri Mar 12, 2004 2:00 pm
Academic status: Alumnus/a
Gender:
Location: A Galaxy Far, Far Away
Contact:

Post by mikem4600 » Thu Nov 17, 2005 12:04 pm

nap wrote:Τώρα μη ρωτήσεις γιατί θα πρέπει να γίνει έτσι, γιατί είναι μια πονεμένη ιστορία με πελάτες, project managers και έναν καημένο developer (εμένα :-( ). Ώρες-ώρες αισθάνομαι σαν τον Ζαχαρία Δεντοφτιάχνω...
LoL, OK. :-D Καλό κουράγιο...
Autocracy hates questions. Anarchy hates answers.
Post Reply

Return to “Προγραμματισμός”