realbasic-nug.fr
[Top] [All Lists]

Re: Probleme de touches

To: REALbasic NUG French <realbasic-nug dot fr at lists dot realsoftware dot com>
Subject: Re: Probleme de touches
From: roland poulard <roland at sucellus dot net>
Date: Tue, 14 Aug 2007 21:43:05 +0200
Delivered-to: listarchive at realsoftware dot com
Delivered-to: realbasic-nug dot fr at lists dot realsoftware dot com
Avec un obj de type Canvas ou Bevelbutton
Dans l'evenement Keydown de la fenetre

  select case asc(key)
  case 30  ' - haut
    obj.Height = obj.Height - 1
  case 31  ' + haut
    obj.Height = obj.Height + 1
  case 28  ' - large
    obj.Width = obj.Width - 1
  case 29  ' + large
    obj.Width = obj.Width + 1
  case 4  ' + diagonal
    obj.Width = obj.Width + 1
    obj.Height = obj.Height + 1
  case 1  ' - diagonal
    obj.Width = obj.Width - 1
    obj.Height = obj.Height - 1
  case 11  ' pg haut
    obj.Top = obj.Top - 1
  case 12  ' pg bas
    obj.Top = obj.Top + 1
  case else

  end select

avec select case ou if.... then , ceci semble pourtant bien fonctionner


Le mardi, 14 aoû 2007, à 08:51 Europe/Paris, Antoine Crêtaux a écrit :

Cela ne change rien dans la meme procedure je teste les fleches et le résultat est le meme

  If asc(key) = 30 then
    Cmodif(0).top = Cmodif(0).top-1
  end if


Le 13 août 07 à 23:04, roland poulard a écrit :


Le lundi, 13 aoû 2007, à 14:19 Europe/Paris, Antoine Crêtaux a écrit :

J'avoue que je ne comprends pas. J'ai deux projets. Dans la fenetre principale des deux je me place dans le keydown
pour l'un je fais

  Dim i as integer

  For i = 0 to Laliste.ListCount-1
    If left(laliste.cell(i,1),1) = key then
      Laliste.ListIndex = i
      Laliste.ScrollPosition = i
      exit
    End if
  Next

  return true

ce qui me permet de faire la sélection dans la liste

Pour le second je fais

  if (key = "V" or key ="v")  then
    if clip.picture <> nil then
      Cimage.backdrop = clip.picture
    End if
  End if

Ce qui me permet de coller l'image du presse papier dans un canvas.

Tout cela fonctionne normalement sauf que pour le premier projet tout se passe bien alors que cela ne fonctionne sur le deuxieme uniquement si je fais la touche "Pomme" en meme temps...

Je ne comprend pas pourquoi je suis obligé de faire cela. Il y a t il quelque part une propriété qui gère cela?


Je viens de faire un essai dans le keydown d'une fenetre vide avec le code ci-dessous

if (key="V" or key="v") then

  msgbox "Interception"

end if

cela marche tres bien, ce n'est donc probablement pas un probleme de touche, sauf si le keydown est traite a un niveau superieur


Suite :
J'ai peut etre repondu un peu vite, sans consulter Langage Reference. Si j'ai bien compris le contenu, le test d'existence du picture
devrait etre

  if clip.PictureAvailable then

Cordialement







<Prev in Thread] Current Thread [Next in Thread>