|
sorry Luc I meant that because your code in c# but in vb forum so I was...
thatraja |Chennai|India|
Brainbench certifications Univotes are like kid's kisses don't reject it Do what you want quickly because the Doomsday on 2012 My childhood story
|
|
|
|
|
No problem.
|
|
|
|
|
cheers.
BTW I'm happy at 109 by total reputation in your CP Vanity ver 2.0. At least you have put option for 5 reputation pages which displaying me. Thank you. I'll publish my article next month which is in my draft for long time.
thatraja |Chennai|India|
Brainbench certifications Univotes are like kid's kisses don't reject it Do what you want quickly because the Doomsday on 2012 My childhood story
|
|
|
|
|
|
Dave Kreskowiak wrote: he's using VB6
Didn't the support for that run out 2/3 years ago?
|
|
|
|
|
At least... I'm actually praising Microsoft for dropping VB6 runtime support in Windows 8! WooHoo!! Finally, the bitch is dead!!
|
|
|
|
|
Does exist the possibility set color transparent within Vb.Image?
Any Method.
FreeImage, MS WIA, GDIPlus, CopyMemory, ...
By sample: I have VB.Image1 with zone of transparency. One Vb.Image1 On Form. Can be change this Image directly by change Alpha bytes of pixels of this Image1 ? How use CopyMemory in this case?
Or How use for this case the function Image1.Picture.Render ?
For VB6.
Thanks.
|
|
|
|
|
not vb6...but maybe it can help. Here is how I set transparency on an image it in VS2005:
Dim x As System.Drawing.Bitmap = imgMain.Image
x.MakeTransparent(dlgColor.Color)
imgMain.Image = x
|
|
|
|
|
Thank you, Kschuler. I will try do it. One time similar VS2005 code made a BMP Image transparent. All was Ok. But for VB6 this BMP Image had bad format. Do you know it?
|
|
|
|
|
Sorry. I don't use VB6, so I really don't have a compatible answer for you. Good Luck.
|
|
|
|
|
Hello,everyone! I tried to use Sub like below to caculate. But when the project run, the two textboxes which I wanted to get their "Text" value could not find.Could anyone give me some suggestions or help? Thank you!
Public Function TotalSub(ByVal j As Integer, ByVal diameter As String, ByVal thickness As String, ByVal material As String)
Dim txtGG, txtYL As TextBox
Dim b As String = ""
Dim sum As Single = 0
For Each ctrl As Control In frmQia.Controls
If Not TypeOf ctrl Is TextBox Then Continue For
For i = 1 To j
If ctrl.Name = "txtTJGG" & i Then
txtGG = ctrl
ElseIf ctrl.Name = "txtTJYL" & i Then
txtYL = ctrl
End If
b = Caculate.Weight_Sub(diameter, txtGG.Text, thickness, material, txtYL.Text)
sum += CSng(b)
Next
Next
Return sum
End Function
(I have try to find textboxes like these code in another project with only one form, it could find them. So I don't know why it didn't work when it in a project with some forms )
|
|
|
|
|
because your TextBoxes have names you are not looking for?
because they aren't part of your Form, but are part of another container (Panel, GroupBox, ...)?
because they aren't exactly TextBoxes? (maybe MaskedTextBox)
because your input parameters are wrong? (such as j=0)
because you are calling the SUB when the Form isn't holding anything yet/any more?
your guess could be even better as mine...
|
|
|
|
|
Hi
It might be handy to emit the name and types of the controls that you encounter to the debugger. Something similar to the code below would reveal the names of the components on your form that get looped;
Public Function TotalSub(ByVal j As Integer, ByVal diameter As String, ByVal thickness As String, ByVal material As String)
Dim txtGG, txtYL As TextBox
Dim b As String = ""
Dim sum As Single = 0
For Each ctrl As Control In frmQia.Controls
System.Diagnostics.Debugger.WriteLine ("Type {0}, named {1}", ctrl.GetType().FullName, ctrl.Name)
If Not TypeOf ctrl Is TextBox Then Continue For
For i = 1 To j
If ctrl.Name = "txtTJGG" & i Then
txtGG = ctrl
I'm guessing that the TextBox is contained inside another control. That means that you'd have to loop the Controls -collection of the Control that you've put the textbox in.
I are Troll
|
|
|
|
|
Did you put these TextBoxs in another container on the Form such as a Panel?? If they are inside another container, you won't find them because they are not in the Forms Controls collection.
|
|
|
|
|
Hi,everyone!The Textboxes were in a Tabpage which was in the Form I wrote in code to find. So I should find textboxes I need in frmQia.Tabcontrol1?
|
|
|
|
|
Yes you would go through the controls on the tab page
e.g. where 0 is the tab page you want to check for controls
For Each ctrl As Control In TabControl1.TabPages(0).Controls
.... do checks and other stuff here
Next
As barmey as a sack of badgers
Dude, if I knew what I was doing in life, I'd be rich, retired, dating a supermodel and laughing at the rest of you from the sidelines.
|
|
|
|
|
Thank you, I will try it now!
|
|
|
|
|
Hi,Simon! I have tried what like you said,but it didn't find the textboxes.In this project, the Form "frmQia" was Inited after I clicked a button and after I inputed some textes in it, I would leave it. The sub that I wrote will be called in another Button_Click event after I leave the form.I think the form "frmQia" has hold the textboxes and their name were right.So...What happened to me...
|
|
|
|
|
It sounds as if you are trying to get values from one form by clicking a button on a different form.
If so, Passing Values between Forms in .NET 1.x with C# and VB.NET examples[^] might be useful to you.
Henry Minute
Do not read medical books! You could die of a misprint. - Mark Twain
Girl: (staring) "Why do you need an icy cucumber?"
“I want to report a fraud. The government is lying to us all.”
|
|
|
|
|
Hello,Henry! Thanks for your suggestion and the artcile.I've read it.It also give me some help!I have solved this quesiton with all you suggest.Finally I found the textboexes were in a form's tabpage's pannel.
Thanks all of you!
|
|
|
|
|
i have this code:
type
Symbol = string[8];
SymTab = array[1..1000] of Symbol;
TabPtr = ^SymTab;
var
ST: array[1..MaxEntry] of Symbol;
SType: array[1..MaxEntry] of char;
132 function Lookup(T: TabPtr; s: string; n: integer): integer;
133 var
134 i: integer;
135 found: Boolean;
136 begin
137 found := false;
138 i := n;
139 while (i > n) and not found do
140 if s = T^[i] then
141 found := true
142 else
143 dec(i);
144 Lookup := i;
145 end;
152 function InTable(n: Symbol): Boolean;
153 begin
154 InTable := Lookup(@ST, n, MaxEntry) <> 0;
155 end;
when i complier with gpc , it will print this:Tiny10.pas: In function `InTable':
<b>Tiny10.pas:154: error: passing arg 1 of `Lookup' from incompatible pointer type
Tiny10.pas:132: error: routine declaration</b>
can you tell me why? actually,i just know C++, i learn pascal for i read a book which use it.
thank you
<div class="signature"><div class="modified">modified on Tuesday, December 7, 2010 3:53 AM</div></div>
|
|
|
|
|
Hi,
1.
this is not the right forum for this. Your code might be Pascal, it certainly isn't Visual Basic.
2.
I don't know the answer, I would however try again without the '@' in line 154
3.
yes, I use line numbers to my advantage, and so should you; tell your IDE to show line numbers, look at such details when the compiler or run-time reports problems, and when you post, indicate which line has what line number of interest.
|
|
|
|
|
This is Pascal, not VB. Maybe the Delphi forum would have been better for this question. Anyway:
ST is declared as array[1..MaxEntry] of Symbol
TabPtr is declared as ^SymTab (pointer to SymTab)
T parameter in Lookup function is declared as TabPtr -- ^SymTab
So, declare ST as SymTab and it should work.
|
|
|
|
|
|
Hi All,
I'm writing a simple sql editor for our solid databases, and after the information has been retrieved I need to be able to display the field lenght for the column on the Database.
I fill the datagridview like this:
Private Sub applysql(ByVal query As String, Optional ByVal transaction As Odbc.OdbcTransaction = Nothing)<br />
Try<br />
Dim command As New Odbc.OdbcCommand(query, solid, transaction)<br />
datareader = command.ExecuteReader<br />
<br />
bindingsource.DataSource = datareader<br />
resultsdatgdvw.DataSource = bindingsource<br />
resultsdatgdvw.Update()<br />
resultsdatgdvw.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.ColumnHeader)<br />
resultslbl.Text = "Returned " & resultsdatgdvw.RowCount & " rows"<br />
If Rollbackbtn.Enabled = False Then<br />
transaction.Commit()<br />
End If<br />
<br />
datareader.close()<br />
datareader.dispose()<br />
Catch ex As Exception<br />
MsgBox(ex.Message)<br />
End Try<br />
End Sub
and then wnat to display the tooltip with the information on like this:
Private Sub resultsdatgdvw_CellToolTipTextNeeded(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellToolTipTextNeededEventArgs) Handles resultsdatgdvw.CellToolTipTextNeeded<br />
If e.ColumnIndex > -1 Then<br />
e.ToolTipText = "Type: " & resultsdatgdvw.Columns(e.ColumnIndex).ValueType.ToString & " Length: " & 'Here is where I need to find the max length of the field <br />
End If<br />
End Sub
Any help appreciated!
Chris
|
|
|
|